Moving mmap to poly, cleaning up devices.
This commit is contained in:
@@ -17,8 +17,8 @@ using namespace xe;
|
||||
using namespace xe::kernel;
|
||||
|
||||
|
||||
XFile::XFile(KernelState* kernel_state, uint32_t desired_access) :
|
||||
desired_access_(desired_access), position_(0),
|
||||
XFile::XFile(KernelState* kernel_state, fs::Mode mode) :
|
||||
mode_(mode), position_(0),
|
||||
XObject(kernel_state, kTypeFile) {
|
||||
async_event_ = new XEvent(kernel_state);
|
||||
async_event_->Initialize(false, false);
|
||||
|
||||
@@ -149,13 +149,13 @@ public:
|
||||
virtual void* GetWaitHandle();
|
||||
|
||||
protected:
|
||||
XFile(KernelState* kernel_state, uint32_t desired_access);
|
||||
XFile(KernelState* kernel_state, fs::Mode mode);
|
||||
virtual X_STATUS ReadSync(
|
||||
void* buffer, size_t buffer_length, size_t byte_offset,
|
||||
size_t* out_bytes_read) = 0;
|
||||
|
||||
private:
|
||||
uint32_t desired_access_;
|
||||
fs::Mode mode_;
|
||||
XEvent* async_event_;
|
||||
|
||||
// TODO(benvanik): create flags, open state, etc.
|
||||
|
||||
@@ -50,7 +50,7 @@ X_STATUS XUserModule::LoadFromFile(const char* path) {
|
||||
result = X_STATUS_NO_SUCH_FILE;
|
||||
XEFAIL();
|
||||
}
|
||||
if (fs_entry->type() != fs::Entry::kTypeFile) {
|
||||
if (fs_entry->type() != fs::Entry::Type::FILE) {
|
||||
XELOGE("Invalid file type: %s", path);
|
||||
result = X_STATUS_NO_SUCH_FILE;
|
||||
XEFAIL();
|
||||
@@ -59,7 +59,8 @@ X_STATUS XUserModule::LoadFromFile(const char* path) {
|
||||
// If the FS supports mapping, map the file in and load from that.
|
||||
if (fs_entry->can_map()) {
|
||||
// Map.
|
||||
fs::MemoryMapping* mmap = fs_entry->CreateMemoryMapping(kXEFileModeRead, 0, 0);
|
||||
fs::MemoryMapping* mmap =
|
||||
fs_entry->CreateMemoryMapping(fs::Mode::READ, 0, 0);
|
||||
XEEXPECTNOTNULL(mmap);
|
||||
|
||||
// Load the module.
|
||||
@@ -76,7 +77,7 @@ X_STATUS XUserModule::LoadFromFile(const char* path) {
|
||||
buffer = (uint8_t*)xe_malloc(buffer_length);
|
||||
|
||||
// Open file for reading.
|
||||
result = fs_entry->Open(kernel_state(), kXEFileModeRead, false, &file);
|
||||
result = fs_entry->Open(kernel_state(), fs::Mode::READ, false, &file);
|
||||
XEEXPECTZERO(result);
|
||||
|
||||
// Read entire file into memory.
|
||||
|
||||
Reference in New Issue
Block a user