Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Kernel/SharedMemory: Don't take over and unmap the source memory block when creating a shared memory, just reference it. | Subv | 2017-10-02 | 1 | -15/+12 |
| | | | | Also reference the right offset into the backing block for the requested address. | ||||
* | Fixed type conversion ambiguity | Huw Pascoe | 2017-09-30 | 1 | -1/+2 |
| | |||||
* | Memory: Make PhysicalToVirtualAddress return a boost::optional | Yuri Kunde Schlesner | 2017-06-22 | 1 | -1/+1 |
| | | | | And fix a few places in the code to take advantage of that. | ||||
* | Kernel: Centralize error definitions in errors.h | Yuri Kunde Schlesner | 2017-05-25 | 1 | -10/+6 |
| | |||||
* | Use negative priorities to avoid special-casing the self-include | Yuri Kunde Schlesner | 2016-09-21 | 1 | -1/+1 |
| | |||||
* | Remove empty newlines in #include blocks. | Emmanuel Gil Peyrot | 2016-09-21 | 1 | -3/+1 |
| | | | | | | | This makes clang-format useful on those. Also add a bunch of forgotten transitive includes, which otherwise prevented compilation. | ||||
* | Manually tweak source formatting and then re-run clang-format | Yuri Kunde Schlesner | 2016-09-19 | 1 | -4/+2 |
| | |||||
* | Sources: Run clang-format on everything. | Emmanuel Gil Peyrot | 2016-09-18 | 1 | -26/+49 |
| | |||||
* | HLE/Applets: Give each applet its own block of heap memory, and use that when creating the framebuffer shared memory block. | Subv | 2016-05-13 | 1 | -0/+17 |
| | |||||
* | Kernel: Account for automatically-allocated shared memories in the amount of used linear heap memory. | Subv | 2016-05-13 | 1 | -0/+5 |
| | |||||
* | Kernel/SharedMemory: Log an error when Map fails. | Subv | 2016-05-13 | 1 | -1/+10 |
| | |||||
* | Kernel: Implemented shared memory permissions. | Subv | 2016-05-13 | 1 | -9/+41 |
| | |||||
* | Kernel/SharedMemory: Properly implemented shared memory support. | Subv | 2016-05-13 | 1 | -57/+59 |
| | | | | | | | Applications can request the kernel to allocate a piece of the linear heap for them when creating a shared memory object. Shared memory areas are now properly mapped into the target processes when calling svcMapMemoryBlock. Removed the APT Shared Font hack as it is no longer needed. | ||||
* | HLE/SVC: Implement UnmapMemoryBlock. | Subv | 2016-01-14 | 1 | -0/+21 |
| | | | | This implementation will need to be (almost completely) changed when we implement multiprocess support. | ||||
* | Core: Improve APT Shared Font hack | Yuri Kunde Schlesner | 2015-08-27 | 1 | -2/+25 |
| | | | | Should fix invalid read loops in some games | ||||
* | Memmap: Re-organize memory function in two files | Yuri Kunde Schlesner | 2015-05-15 | 1 | -1/+1 |
| | | | | | | | memory.cpp/h contains definitions related to acessing memory and configuring the address space mem_map.cpp/h contains higher-level definitions related to configuring the address space accoording to the kernel and allocating memory. | ||||
* | Kernel: Zero-fill shared memory blocks when mapping | Yuri Kunde Schlesner | 2015-05-11 | 1 | -0/+8 |
| | | | | | | This works around crashes related to GSP/HID/etc. shared memory blocks having garbage values. The proper fix requires proper management of mapped memory blocks in the process. | ||||
* | Kernel: Capture SharedMemory attributes at creation, not when mapping | Yuri Kunde Schlesner | 2015-05-11 | 1 | -9/+11 |
| | |||||
* | Common: Remove common.h | Yuri Kunde Schlesner | 2015-05-07 | 1 | -1/+1 |
| | |||||
* | Initialize base address to 0x0 | Gareth Higgins | 2015-04-09 | 1 | -0/+1 |
| | |||||
* | Kernel: Stop creating useless Handles during object creation | Yuri Kunde Schlesner | 2015-02-02 | 1 | -5/+3 |
| | | | | | They're finally unnecessary, and will stop cluttering the application's handle table. | ||||
* | Explicitly instantiate constructors/destructors for Kernel objects | Yuri Kunde Schlesner | 2015-02-02 | 1 | -0/+3 |
| | | | | | | This should speed up compile times a bit, as well as enable more liberal use of forward declarations. (Due to SharedPtr not trying to emit the destructor anymore.) | ||||
* | Kernel: Introduce unique Object ids for debugging | Yuri Kunde Schlesner | 2015-02-02 | 1 | -3/+3 |
| | |||||
* | shared_memory: Fix assignments in SharedMemory::Map | Lioncash | 2015-01-30 | 1 | -3/+3 |
| | |||||
* | Kernel: Convert SharedMemory to not use Handles | Yuri Kunde Schlesner | 2015-01-30 | 1 | -47/+18 |
| | |||||
* | Kernel: Remove useless/duplicated comments; mark functions static | Yuri Kunde Schlesner | 2015-01-30 | 1 | -9/+1 |
| | |||||
* | Kernel: Start using boost::intrusive_ptr for lifetime management | Yuri Kunde Schlesner | 2015-01-09 | 1 | -2/+2 |
| | |||||
* | Kernel: New handle manager | Yuri Kunde Schlesner | 2014-12-28 | 1 | -1/+2 |
| | | | | | | | | | | | This handle manager more closely mirrors the behaviour of the CTR-OS one. In addition object ref-counts and support for DuplicateHandle have been added. Note that support for DuplicateHandle is still experimental, since parts of the kernel still use Handles internally, which will likely cause troubles if two different handles to the same object are used to e.g. wait on a synchronization primitive. | ||||
* | Kernel: Replace GetStaticHandleType by HANDLE_TYPE constants | Yuri Kunde Schlesner | 2014-12-28 | 1 | -2/+2 |
| | |||||
* | Rename ObjectPool to HandleTable | Yuri Kunde Schlesner | 2014-12-28 | 1 | -3/+3 |
| | |||||
* | License change | purpasmart96 | 2014-12-21 | 1 | -1/+1 |
| | |||||
* | Convert old logging calls to new logging macros | Yuri Kunde Schlesner | 2014-12-13 | 1 | -8/+2 |
| | |||||
* | Remove duplicated docs/update them for changed parameters. | Yuri Kunde Schlesner | 2014-11-24 | 1 | -16/+0 |
| | |||||
* | HLE: Revamp error handling throrough the HLE code | Yuri Kunde Schlesner | 2014-11-24 | 1 | -12/+15 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | All service calls in the CTR OS return result codes indicating the success or failure of the call. Previous to this commit, Citra's HLE emulation of services and the kernel universally either ignored errors or returned dummy -1 error codes. This commit makes an initial effort to provide an infrastructure for error reporting and propagation which can be use going forward to make HLE calls accurately return errors as the original system. A few parts of the code have been updated to use the new system where applicable. One part of this effort is the definition of the `ResultCode` type, which provides facilities for constructing and parsing error codes in the structured format used by the CTR. The `ResultVal` type builds on `ResultCode` by providing a container for values returned by function that can report errors. It enforces that correct error checking will be done on function returns by preventing the use of the return value if the function returned an error code. Currently this change is mostly internal since errors are still suppressed on the ARM<->HLE border, as a temporary compatibility hack. As functionality is implemented and tested this hack can be eventually removed. | ||||
* | Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generated | Emmanuel Gil Peyrot | 2014-11-19 | 1 | -2/+2 |
| | |||||
* | Fix two format strings. | Lioncash | 2014-11-14 | 1 | -1/+1 |
| | |||||
* | Add `override` keyword through the code. | Yuri Kunde Schlesner | 2014-10-26 | 1 | -3/+3 |
| | | | | This was automated using `clang-modernize`. | ||||
* | Core: Alter the kernel string functions to use std::string instead of const char*. | Lioncash | 2014-08-18 | 1 | -1/+1 |
| | | | | Most functions already operate on std::strings. This also removes the need to manually null terminate thread names. | ||||
* | SharedMemory: Updated MapSharedMemory to use an enum for permissions. | bunnei | 2014-07-05 | 1 | -5/+16 |
| | | | | - Also added some safety checks to MapSharedMemory. | ||||
* | Kernel: Added support for shared memory objects. | bunnei | 2014-07-05 | 1 | -0/+94 |
SharedMemory: Added optional name field for tracking known objects. |