Commit Graph

44350 Commits

Author SHA1 Message Date
Michael Lotz
eac94f5db9 kernel: Also push lock caller in acquire_spinlock_nocheck. 2014-11-02 00:04:28 +01:00
Michael Lotz
41418981f4 kernel: Sync panic messages across acquire_spinlock versions.
* Always include last caller and lock value on both UP and MP path.
* Change lock value printing to hex format, as 0xdeadbeef is more
  obvious than its decimal counterpart.
2014-11-02 00:04:27 +01:00
Rene Gollent
b6c4fc962c Debugger: Implement #9946.
TableCellValueRenderer{Utils}:
- The rendering calls now take a boolean indicating if the value
  being rendered differs from its previous state. This is taken
  into account by rendering it in a different color to indicate
  the change. Adjust all implementing subclasses accordingly.

VariablesView::ModelNode:
- Now stores the previous value of the corresponding value node,
  and can be queried if its value has changed. Used by renderers.

VariablesView::_{Add,Apply}ViewStateDescendentInfos():
- When walking the model, also store/restore the values of nodes in the
  history.

In summation of all the above changes, when stepping through a function,
we now display values that have changed since the last step, or that have
appeared for the first time in a different color.
2014-11-01 18:51:57 -04:00
Rene Gollent
f40556afab Debugger: Cleanups, no functional change. 2014-11-01 18:51:56 -04:00
François Revol
2bbd623a48 ps: fix warnings 2014-11-01 21:42:32 +01:00
Rene Gollent
46ebcc8cb4 Debugger: Fix type issues in CLanguageExpressionEvaluator.
- When using variable values in an expression, we weren't ensuring
  that the resulting value type matched up with the requested
  type for the expression, leading to unpredictable results in some
  cases.
2014-11-01 16:10:27 -04:00
Rene Gollent
e2a22217e2 Number: Add accessor for underlying type. 2014-11-01 16:10:26 -04:00
Jessica Hamilton
22ea34153f access: fix to be POSIX compliant 2014-11-02 08:51:24 +13:00
François Revol
564a073b01 ARM: move uEnv.txt content to BoardSetup file
That's really where it belongs. Not all boards will need it,
but for now it's always created.
2014-11-01 19:57:48 +01:00
François Revol
95e9515c4b U-Boot: drop the bind on the flash image action 2014-11-01 19:08:57 +01:00
François Revol
92fcf262ff ARM: Check for RAM size in FDT
We skip the check when we already have ranges inserted,
like from the raspberry Pi start code, and we fall back to
32MB at SDRAM_BASE is not found.
2014-11-01 18:53:48 +01:00
François Revol
8d8bda071f U-Boot: generate a separate uImage for the boot tgz as well
We need this when using the linux entry point.
2014-11-01 17:11:01 +01:00
François Revol
d1ebf9716d U-Boot: ARM: Add a linux entry point to asm shell code
While the NetBSD entry point is handy as we can use a single uImage
with all 3 blobs, it bypasses U-Boot's own patching of the FDT since
it's not visible to it, so we won't get the RAM size and other things
through it.
2014-11-01 17:09:09 +01:00
François Revol
5de5d59d78 U-Boot: move gUImage and gFDT back to BSS section
No need for this trick anymore.
2014-11-01 16:39:44 +01:00
François Revol
909a14bb55 U-Boot: introduce a start_gen() catch-all entry
So we can pass it all the optional stuff instead of playing tricks
to initialize them outside of BSS.
2014-11-01 16:39:44 +01:00
Michael Lotz
bf685cdf2e kernel: Fix missing reference release in CreateThreadEvent.
CreateThreadEvent::DoDPC() missed a reference release to balance the
acquired reference before queuing the DPC, resulting in the
CreateThreadEvent objects being leaked.

This also removes the destructor that tried to cancel the DPC. Since
the class is reference counted and only destroyed when the DPC has
run and released the last reference, this didn't make much sense.
2014-11-01 16:32:04 +01:00
Michael Lotz
f00353a519 posixtestsuite: Normalize line endings. 2014-11-01 15:43:43 +01:00
Michael Lotz
91e3b80197 {app|input}_server: Provide app_server team id to input_server.
For cases where a BMessage is passed by area, the remote team id needs
to be passed into BMessage::_SendMessage() so it can transfer the area
to the target team. It falls back to detecting the port owner if said
information is missing. However, since the input_server owns the port
in this situation, the remote team needs to be specified explicitly.
Add the app_server team id to the input acquire message, so input_server
gets the needed info.

As messages that exceed the pass by area threshold are rather rare in
general and shouldn't happen at all in this situation, this does not
fix any immediate problem.
2014-11-01 10:26:38 +01:00
Michael Lotz
a0b6efc8c0 BMessage: Check message area is owned by the current team.
When a message is passed by area, the sender is supposed to transfer
area ownership to the target team. If the area is not mapped within
the current team, accessing the area address would be invalid.

Also mark the area as read-only so accidental writes to the area would
become obvious.
2014-11-01 10:26:37 +01:00
Michael Lotz
d3344ffccf BMessage: Check the return of _CopyForWrite().
When a message is passed by area, any modification to the message must
first trigger a copy of the message content. The success of this
operation was not checked however, possibly leading to later reallocs
on non-heap memory.
2014-11-01 10:26:37 +01:00
François Revol
1309cdade9 U-Boot: rework flash image rule to be more flexible
We can now specify arbitrary content and offsets for each.

Change the default block size to 1k.
2014-11-01 05:37:06 +01:00
François Revol
f680a1a723 U-Boot: skip flash-image targets if no U-Boot image is passed
When building flash images we want a U-Boot binary for now.
Testing for it avoids dd waiting for input on stdin
instead leaving no clue.
2014-11-01 02:15:09 +01:00
François Revol
7b0ec176cb ARM: add required FDT files for Overo and Tobi board 2014-11-01 02:05:39 +01:00
Adrien Destugues
f381456740 Fix errors when building with DEBUG=2
Fixes #8306. Please define DEBUG in UserBuildConfig or Jamfiles if
needed.
2014-10-31 16:49:36 +01:00
François Revol
960598d4c3 norflash: Fix warning 2014-10-31 16:28:49 +01:00
François Revol
88d51506d0 Move ARM device tree files to an arch-specific subfolder
FDT are also used on PPC at least, and at least skeleton.dtsi
might clash since there is a different one for PPC.
2014-10-31 16:28:48 +01:00
Michael Lotz
6a80e6889a kernel: Fix missing reference to team/thread in signal events.
The signal to the team/thread is only actually sent in a deferred
procedure. To ensure that the team/thread stays valid between the DPC
being queued and it actually running, we need to acquire a reference.

Fixes #11390, where the DPC was run after the team was already
destroyed.
2014-10-31 16:16:37 +01:00
Adrien Destugues
6109f53bc6 App_server: fix various issues with hardware cursors
* X and Y coordinates of hot point were swapped for 1-bit cursors
* Prefer color cursor over 1-bit one if possible
* Adjust the XOR/AND masks for 1-bit cursors to what the hardware
expects
* Handle switching etween hardware and software cursor.

Patch by Looncraz and Ziusudra, fixes #9261.
2014-10-31 14:54:48 +01:00
Adrien Destugues
d0a662e20a Intel partition: activate the first created partition.
The default MBR relies on at least one partition being active. The first
one sounds like a good choice.

Fixes #7930.
2014-10-31 14:12:44 +01:00
Adrien Destugues
a62c3f918c usb_webcam: fix build. 2014-10-31 13:46:47 +01:00
Adrien Destugues
dff211d8a6 Build media add-ons for secondary arch.
Fixes #10049.
2014-10-31 12:20:52 +01:00
Ithamar R. Adema
5d8ce4733c ARM: u-boot: Generate DTB and include in uImage 2014-10-31 12:08:03 +01:00
Ithamar R. Adema
a52dd58d2d ARM: kernel: introduce SoC abstraction
This introduces InterruptController and HardwareTimer classes to
handle the SoC specific implementations of timers and ints for
the ARM platform.

These could be improved and moved to a more 'generic' level once
we're confident they are 'good enough'.

NOTE: The OMAP timer implementation is fully untested and probably
      completely non-functional....
2014-10-31 11:37:02 +01:00
Ithamar R. Adema
1628632584 ARM: u-boot: fixup FDT handling
If we find an FDT (either from uImage or otherwise) we make sure
we map it after mmu_init() and use kernel_args to pass it to the
kernel (so it is available at all times there).
2014-10-31 11:21:38 +01:00
Ithamar R. Adema
b794d1f947 ARM: platform: grab the FDT from the bootloader 2014-10-31 11:19:00 +01:00
Ithamar R. Adema
778611c7e6 fdt: humble beginnings of Flattened Device Tree
This isn't really a bus_manager yet, but just minimal support so
we can get rid of hardcoded ARM SoC support from the core kernel
code.

Needs lots of work, like proper handling of #address-cells and
the like. Also, generic attribute handling, device_manager
integration, and I could go on for hours ;)
2014-10-31 11:14:05 +01:00
Ithamar R. Adema
f4c28fe71f loader: make sure bfs debug output ends up in log
Use dprintf instead of printf so any debug output ends up in
bootloader log instead of only being displayed on-screen.
2014-10-31 10:53:28 +01:00
Jessica Hamilton
47db8ac7d6 pkgman: add missing padding for percentage display 2014-10-31 20:01:29 +13:00
Rene Gollent
b13d824927 Debugger: MarkerView tweaks.
- Draw conditional breakpoints in a different color from regular
  ones for easy visual differentiation.
- Right clicking on an existing breakpoint marker now brings up the
  condition editing window.
2014-10-30 20:59:52 -04:00
Rene Gollent
fe47f15fb4 Debugger: ThreadHandler cleanups.
- Ask the architecture for a stack trace directly, as we only
  need the top frame.
- Properly update thread state before we go into condition
  evaluation. Otherwise, other parts of the debugger potentially
  wouldn't notice that we had continued execution in the case
  where the condition evaluates to false, and would indicate a
  program stop at the breakpoint erroneously.
2014-10-30 20:59:52 -04:00
Henry Harrington
601b2f7eda vm: Try harder to allocate early physical pages.
* On UEFI, pages are allocated top-down; previously,
  VM would fail to allocate early pages due to
  running into pages allocated at the top and
  assume it had run out of pages to map.

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>
2014-10-31 13:42:48 +13:00
Adrien Destugues
87d0590f60 pkgman: better download progress bar
* Use Unicode block drawing characters to provide sub-character accuracy
* Also display the download progress percentage as a number

When downloading big packages this helps seeing that the bar continues
moving and that the download is not stalled.
2014-10-30 23:21:02 +01:00
Rene Gollent
a5ce4678c0 Debugger: Implement conditional breakpoints.
ThreadHandler:
- When a breakpoint event is hit, we now check if there is an
  associated UserBreakpoint with a condition attached. If so,
  we schedule an evaluation request, and only stop the thread if
  that one evaluates to true (or if evaluation fails in some way).

This implements #9713.
2014-10-30 16:54:33 -04:00
Rene Gollent
43060a58fa Debugger: Minor tweak to ExpressionEvaluationJob.
- ExpressionEvaluationJob now stores the final result value,
  and provides an accessor to it.
2014-10-30 16:54:32 -04:00
Rene Gollent
942226c711 Debugger: Add UI for configuring breakpoint conditions.
General:
- Add message codes for requesting breakpoint configuration.

UserInterfaceListener/TeamDebugger:
- Add/implement hooks for requesting breakpoint condition changes.

BreakpointsView:
- Add button to request editing the currently selected breakpoint's
  condition.

TeamWindow:
- Handle request to show breakpoint edit window.

BreakpointEditWindow:
- Implement simple radio-based UI for modifying the current breakpoint's
  condition.

Still missing: Actually handling/evaluating the breakpoint conditions in
the ThreadHandler when the breakpoint is hit.
2014-10-30 16:54:31 -04:00
Rene Gollent
3dfdc98cd1 Debugger: Show breakpoint conditions in list view.
- Adjust breakpoint table and model to also show breakpoint conditions,
  if set.
2014-10-30 16:54:31 -04:00
Rene Gollent
65a10b5000 Debugger: Add condition expression member to UserBreakpoint.
- UserBreakpoint and its corresponding settings classes now
  store/recall an optional condition expression.
2014-10-30 16:54:30 -04:00
Rene Gollent
854b341612 Debugger: Minor tweak to expression window.
- If the expression result is an integer, display it in both hex and decimal
  format.
2014-10-30 16:54:29 -04:00
Adrien Destugues
a13654e089 Network: add field for setting the domain. 2014-10-30 21:24:23 +01:00
Adrien Destugues
8aaad21dea Change the new net preflet mimetype to match the old one
This lets NetworkStatus and possibly other apps find it again.
2014-10-30 19:52:43 +01:00