mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-12-06 07:12:28 +01:00
sys_fs: Remove PPU sleep hacks
Some checks are pending
Generate Translation Template / Generate Translation Template (push) Waiting to run
Build RPCS3 / RPCS3 Linux ${{ matrix.os }} ${{ matrix.compiler }} (/rpcs3/.ci/build-linux-aarch64.sh, gcc, rpcs3/rpcs3-ci-jammy-aarch64:1.7, ubuntu-24.04-arm) (push) Waiting to run
Build RPCS3 / RPCS3 Linux ${{ matrix.os }} ${{ matrix.compiler }} (/rpcs3/.ci/build-linux.sh, gcc, rpcs3/rpcs3-ci-jammy:1.7, ubuntu-24.04) (push) Waiting to run
Build RPCS3 / RPCS3 Linux ${{ matrix.os }} ${{ matrix.compiler }} (a1d35836e8d45bfc6f63c26f0a3e5d46ef622fe1, rpcs3/rpcs3-binaries-linux-arm64, /rpcs3/.ci/build-linux-aarch64.sh, clang, rpcs3/rpcs3-ci-jammy-aarch64:1.7, ubuntu-24.04-arm) (push) Waiting to run
Build RPCS3 / RPCS3 Linux ${{ matrix.os }} ${{ matrix.compiler }} (d812f1254a1157c80fd402f94446310560f54e5f, rpcs3/rpcs3-binaries-linux, /rpcs3/.ci/build-linux.sh, clang, rpcs3/rpcs3-ci-jammy:1.7, ubuntu-24.04) (push) Waiting to run
Build RPCS3 / RPCS3 Mac ${{ matrix.name }} (51ae32f468089a8169aaf1567de355ff4a3e0842, rpcs3/rpcs3-binaries-mac, .ci/build-mac.sh, Intel) (push) Waiting to run
Build RPCS3 / RPCS3 Mac ${{ matrix.name }} (8e21bdbc40711a3fccd18fbf17b742348b0f4281, rpcs3/rpcs3-binaries-mac-arm64, .ci/build-mac-arm64.sh, Apple Silicon) (push) Waiting to run
Build RPCS3 / RPCS3 Windows (push) Waiting to run
Build RPCS3 / RPCS3 Windows Clang (win64, clang, clang64) (push) Waiting to run
Build RPCS3 / RPCS3 FreeBSD (push) Waiting to run
Some checks are pending
Generate Translation Template / Generate Translation Template (push) Waiting to run
Build RPCS3 / RPCS3 Linux ${{ matrix.os }} ${{ matrix.compiler }} (/rpcs3/.ci/build-linux-aarch64.sh, gcc, rpcs3/rpcs3-ci-jammy-aarch64:1.7, ubuntu-24.04-arm) (push) Waiting to run
Build RPCS3 / RPCS3 Linux ${{ matrix.os }} ${{ matrix.compiler }} (/rpcs3/.ci/build-linux.sh, gcc, rpcs3/rpcs3-ci-jammy:1.7, ubuntu-24.04) (push) Waiting to run
Build RPCS3 / RPCS3 Linux ${{ matrix.os }} ${{ matrix.compiler }} (a1d35836e8d45bfc6f63c26f0a3e5d46ef622fe1, rpcs3/rpcs3-binaries-linux-arm64, /rpcs3/.ci/build-linux-aarch64.sh, clang, rpcs3/rpcs3-ci-jammy-aarch64:1.7, ubuntu-24.04-arm) (push) Waiting to run
Build RPCS3 / RPCS3 Linux ${{ matrix.os }} ${{ matrix.compiler }} (d812f1254a1157c80fd402f94446310560f54e5f, rpcs3/rpcs3-binaries-linux, /rpcs3/.ci/build-linux.sh, clang, rpcs3/rpcs3-ci-jammy:1.7, ubuntu-24.04) (push) Waiting to run
Build RPCS3 / RPCS3 Mac ${{ matrix.name }} (51ae32f468089a8169aaf1567de355ff4a3e0842, rpcs3/rpcs3-binaries-mac, .ci/build-mac.sh, Intel) (push) Waiting to run
Build RPCS3 / RPCS3 Mac ${{ matrix.name }} (8e21bdbc40711a3fccd18fbf17b742348b0f4281, rpcs3/rpcs3-binaries-mac-arm64, .ci/build-mac-arm64.sh, Apple Silicon) (push) Waiting to run
Build RPCS3 / RPCS3 Windows (push) Waiting to run
Build RPCS3 / RPCS3 Windows Clang (win64, clang, clang64) (push) Waiting to run
Build RPCS3 / RPCS3 FreeBSD (push) Waiting to run
This commit is contained in:
parent
fcff16b6f7
commit
ecba1d2cb7
|
|
@ -1036,7 +1036,6 @@ lv2_file::open_result_t lv2_file::open(std::string_view vpath, s32 flags, s32 mo
|
||||||
error_code sys_fs_open(ppu_thread& ppu, vm::cptr<char> path, s32 flags, vm::ptr<u32> fd, s32 mode, vm::cptr<void> arg, u64 size)
|
error_code sys_fs_open(ppu_thread& ppu, vm::cptr<char> path, s32 flags, vm::ptr<u32> fd, s32 mode, vm::cptr<void> arg, u64 size)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.warning("sys_fs_open(path=%s, flags=%#o, fd=*0x%x, mode=%#o, arg=*0x%x, size=0x%llx)", path, flags, fd, mode, arg, size);
|
sys_fs.warning("sys_fs_open(path=%s, flags=%#o, fd=*0x%x, mode=%#o, arg=*0x%x, size=0x%llx)", path, flags, fd, mode, arg, size);
|
||||||
|
|
||||||
|
|
@ -1085,7 +1084,6 @@ error_code sys_fs_open(ppu_thread& ppu, vm::cptr<char> path, s32 flags, vm::ptr<
|
||||||
error_code sys_fs_read(ppu_thread& ppu, u32 fd, vm::ptr<void> buf, u64 nbytes, vm::ptr<u64> nread)
|
error_code sys_fs_read(ppu_thread& ppu, u32 fd, vm::ptr<void> buf, u64 nbytes, vm::ptr<u64> nread)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.trace("sys_fs_read(fd=%d, buf=*0x%x, nbytes=0x%llx, nread=*0x%x)", fd, buf, nbytes, nread);
|
sys_fs.trace("sys_fs_read(fd=%d, buf=*0x%x, nbytes=0x%llx, nread=*0x%x)", fd, buf, nbytes, nread);
|
||||||
|
|
||||||
|
|
@ -1122,6 +1120,11 @@ error_code sys_fs_read(ppu_thread& ppu, u32 fd, vm::ptr<void> buf, u64 nbytes, v
|
||||||
return CELL_OK;
|
return CELL_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (nbytes >= 0x100000 && file->type != lv2_file_type::regular)
|
||||||
|
{
|
||||||
|
lv2_obj::sleep(ppu);
|
||||||
|
}
|
||||||
|
|
||||||
std::unique_lock lock(file->mp->mutex);
|
std::unique_lock lock(file->mp->mutex);
|
||||||
|
|
||||||
if (!file->file)
|
if (!file->file)
|
||||||
|
|
@ -1154,7 +1157,6 @@ error_code sys_fs_read(ppu_thread& ppu, u32 fd, vm::ptr<void> buf, u64 nbytes, v
|
||||||
error_code sys_fs_write(ppu_thread& ppu, u32 fd, vm::cptr<void> buf, u64 nbytes, vm::ptr<u64> nwrite)
|
error_code sys_fs_write(ppu_thread& ppu, u32 fd, vm::cptr<void> buf, u64 nbytes, vm::ptr<u64> nwrite)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.trace("sys_fs_write(fd=%d, buf=*0x%x, nbytes=0x%llx, nwrite=*0x%x)", fd, buf, nbytes, nwrite);
|
sys_fs.trace("sys_fs_write(fd=%d, buf=*0x%x, nbytes=0x%llx, nwrite=*0x%x)", fd, buf, nbytes, nwrite);
|
||||||
|
|
||||||
|
|
@ -1237,7 +1239,6 @@ error_code sys_fs_write(ppu_thread& ppu, u32 fd, vm::cptr<void> buf, u64 nbytes,
|
||||||
error_code sys_fs_close(ppu_thread& ppu, u32 fd)
|
error_code sys_fs_close(ppu_thread& ppu, u32 fd)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
const auto file = idm::get_unlocked<lv2_fs_object, lv2_file>(fd);
|
const auto file = idm::get_unlocked<lv2_fs_object, lv2_file>(fd);
|
||||||
|
|
||||||
|
|
@ -1314,7 +1315,6 @@ error_code sys_fs_close(ppu_thread& ppu, u32 fd)
|
||||||
error_code sys_fs_opendir(ppu_thread& ppu, vm::cptr<char> path, vm::ptr<u32> fd)
|
error_code sys_fs_opendir(ppu_thread& ppu, vm::cptr<char> path, vm::ptr<u32> fd)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.warning("sys_fs_opendir(path=%s, fd=*0x%x)", path, fd);
|
sys_fs.warning("sys_fs_opendir(path=%s, fd=*0x%x)", path, fd);
|
||||||
|
|
||||||
|
|
@ -1491,7 +1491,6 @@ error_code sys_fs_readdir(ppu_thread& ppu, u32 fd, vm::ptr<CellFsDirent> dir, vm
|
||||||
error_code sys_fs_closedir(ppu_thread& ppu, u32 fd)
|
error_code sys_fs_closedir(ppu_thread& ppu, u32 fd)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.warning("sys_fs_closedir(fd=%d)", fd);
|
sys_fs.warning("sys_fs_closedir(fd=%d)", fd);
|
||||||
|
|
||||||
|
|
@ -1506,7 +1505,6 @@ error_code sys_fs_closedir(ppu_thread& ppu, u32 fd)
|
||||||
error_code sys_fs_stat(ppu_thread& ppu, vm::cptr<char> path, vm::ptr<CellFsStat> sb)
|
error_code sys_fs_stat(ppu_thread& ppu, vm::cptr<char> path, vm::ptr<CellFsStat> sb)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.warning("sys_fs_stat(path=%s, sb=*0x%x)", path, sb);
|
sys_fs.warning("sys_fs_stat(path=%s, sb=*0x%x)", path, sb);
|
||||||
|
|
||||||
|
|
@ -1610,7 +1608,6 @@ error_code sys_fs_stat(ppu_thread& ppu, vm::cptr<char> path, vm::ptr<CellFsStat>
|
||||||
error_code sys_fs_fstat(ppu_thread& ppu, u32 fd, vm::ptr<CellFsStat> sb)
|
error_code sys_fs_fstat(ppu_thread& ppu, u32 fd, vm::ptr<CellFsStat> sb)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.warning("sys_fs_fstat(fd=%d, sb=*0x%x)", fd, sb);
|
sys_fs.warning("sys_fs_fstat(fd=%d, sb=*0x%x)", fd, sb);
|
||||||
|
|
||||||
|
|
@ -1666,7 +1663,6 @@ error_code sys_fs_link(ppu_thread&, vm::cptr<char> from, vm::cptr<char> to)
|
||||||
error_code sys_fs_mkdir(ppu_thread& ppu, vm::cptr<char> path, s32 mode)
|
error_code sys_fs_mkdir(ppu_thread& ppu, vm::cptr<char> path, s32 mode)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.warning("sys_fs_mkdir(path=%s, mode=%#o)", path, mode);
|
sys_fs.warning("sys_fs_mkdir(path=%s, mode=%#o)", path, mode);
|
||||||
|
|
||||||
|
|
@ -1728,7 +1724,6 @@ error_code sys_fs_mkdir(ppu_thread& ppu, vm::cptr<char> path, s32 mode)
|
||||||
error_code sys_fs_rename(ppu_thread& ppu, vm::cptr<char> from, vm::cptr<char> to)
|
error_code sys_fs_rename(ppu_thread& ppu, vm::cptr<char> from, vm::cptr<char> to)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.warning("sys_fs_rename(from=%s, to=%s)", from, to);
|
sys_fs.warning("sys_fs_rename(from=%s, to=%s)", from, to);
|
||||||
|
|
||||||
|
|
@ -1794,7 +1789,6 @@ error_code sys_fs_rename(ppu_thread& ppu, vm::cptr<char> from, vm::cptr<char> to
|
||||||
error_code sys_fs_rmdir(ppu_thread& ppu, vm::cptr<char> path)
|
error_code sys_fs_rmdir(ppu_thread& ppu, vm::cptr<char> path)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.warning("sys_fs_rmdir(path=%s)", path);
|
sys_fs.warning("sys_fs_rmdir(path=%s)", path);
|
||||||
|
|
||||||
|
|
@ -1850,7 +1844,6 @@ error_code sys_fs_rmdir(ppu_thread& ppu, vm::cptr<char> path)
|
||||||
error_code sys_fs_unlink(ppu_thread& ppu, vm::cptr<char> path)
|
error_code sys_fs_unlink(ppu_thread& ppu, vm::cptr<char> path)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.warning("sys_fs_unlink(path=%s)", path);
|
sys_fs.warning("sys_fs_unlink(path=%s)", path);
|
||||||
|
|
||||||
|
|
@ -1951,8 +1944,6 @@ error_code sys_fs_fcntl(ppu_thread& ppu, u32 fd, u32 op, vm::ptr<void> _arg, u32
|
||||||
case 0x8000000a: // cellFsReadWithOffset
|
case 0x8000000a: // cellFsReadWithOffset
|
||||||
case 0x8000000b: // cellFsWriteWithOffset
|
case 0x8000000b: // cellFsWriteWithOffset
|
||||||
{
|
{
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
const auto arg = vm::static_ptr_cast<lv2_file_op_rw>(_arg);
|
const auto arg = vm::static_ptr_cast<lv2_file_op_rw>(_arg);
|
||||||
|
|
||||||
if (_size < arg.size())
|
if (_size < arg.size())
|
||||||
|
|
@ -1992,6 +1983,11 @@ error_code sys_fs_fcntl(ppu_thread& ppu, u32 fd, u32 op, vm::ptr<void> _arg, u32
|
||||||
sys_fs.error("%s type: Writing %u bytes to FD=%d (path=%s)", file->type, arg->size, file->name.data());
|
sys_fs.error("%s type: Writing %u bytes to FD=%d (path=%s)", file->type, arg->size, file->name.data());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (op == 0x8000000a && file->type != lv2_file_type::regular && arg->size >= 0x100000)
|
||||||
|
{
|
||||||
|
lv2_obj::sleep(ppu);
|
||||||
|
}
|
||||||
|
|
||||||
std::unique_lock wlock(file->mp->mutex, std::defer_lock);
|
std::unique_lock wlock(file->mp->mutex, std::defer_lock);
|
||||||
std::shared_lock rlock(file->mp->mutex, std::defer_lock);
|
std::shared_lock rlock(file->mp->mutex, std::defer_lock);
|
||||||
|
|
||||||
|
|
@ -2047,8 +2043,6 @@ error_code sys_fs_fcntl(ppu_thread& ppu, u32 fd, u32 op, vm::ptr<void> _arg, u32
|
||||||
|
|
||||||
case 0x80000009: // cellFsSdataOpenByFd
|
case 0x80000009: // cellFsSdataOpenByFd
|
||||||
{
|
{
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
const auto arg = vm::static_ptr_cast<lv2_file_op_09>(_arg);
|
const auto arg = vm::static_ptr_cast<lv2_file_op_09>(_arg);
|
||||||
|
|
||||||
if (_size < arg.size())
|
if (_size < arg.size())
|
||||||
|
|
@ -2102,8 +2096,6 @@ error_code sys_fs_fcntl(ppu_thread& ppu, u32 fd, u32 op, vm::ptr<void> _arg, u32
|
||||||
|
|
||||||
case 0xc0000002: // cellFsGetFreeSize (TODO)
|
case 0xc0000002: // cellFsGetFreeSize (TODO)
|
||||||
{
|
{
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
const auto arg = vm::static_ptr_cast<lv2_file_c0000002>(_arg);
|
const auto arg = vm::static_ptr_cast<lv2_file_c0000002>(_arg);
|
||||||
|
|
||||||
const auto& mp = g_fxo->get<lv2_fs_mount_info_map>().lookup("/dev_hdd0");
|
const auto& mp = g_fxo->get<lv2_fs_mount_info_map>().lookup("/dev_hdd0");
|
||||||
|
|
@ -2418,8 +2410,6 @@ error_code sys_fs_fcntl(ppu_thread& ppu, u32 fd, u32 op, vm::ptr<void> _arg, u32
|
||||||
|
|
||||||
case 0xe0000012: // cellFsGetDirectoryEntries
|
case 0xe0000012: // cellFsGetDirectoryEntries
|
||||||
{
|
{
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
const auto arg = vm::static_ptr_cast<lv2_file_op_dir::dir_info>(_arg);
|
const auto arg = vm::static_ptr_cast<lv2_file_op_dir::dir_info>(_arg);
|
||||||
|
|
||||||
if (_size < arg.size())
|
if (_size < arg.size())
|
||||||
|
|
@ -2434,8 +2424,6 @@ error_code sys_fs_fcntl(ppu_thread& ppu, u32 fd, u32 op, vm::ptr<void> _arg, u32
|
||||||
return CELL_EBADF;
|
return CELL_EBADF;
|
||||||
}
|
}
|
||||||
|
|
||||||
ppu.check_state();
|
|
||||||
|
|
||||||
u32 read_count = 0;
|
u32 read_count = 0;
|
||||||
|
|
||||||
// NOTE: This function is actually capable of reading only one entry at a time
|
// NOTE: This function is actually capable of reading only one entry at a time
|
||||||
|
|
@ -2593,7 +2581,6 @@ error_code sys_fs_fcntl(ppu_thread& ppu, u32 fd, u32 op, vm::ptr<void> _arg, u32
|
||||||
error_code sys_fs_lseek(ppu_thread& ppu, u32 fd, s64 offset, s32 whence, vm::ptr<u64> pos)
|
error_code sys_fs_lseek(ppu_thread& ppu, u32 fd, s64 offset, s32 whence, vm::ptr<u64> pos)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.trace("sys_fs_lseek(fd=%d, offset=0x%llx, whence=0x%x, pos=*0x%x)", fd, offset, whence, pos);
|
sys_fs.trace("sys_fs_lseek(fd=%d, offset=0x%llx, whence=0x%x, pos=*0x%x)", fd, offset, whence, pos);
|
||||||
|
|
||||||
|
|
@ -2639,7 +2626,6 @@ error_code sys_fs_lseek(ppu_thread& ppu, u32 fd, s64 offset, s32 whence, vm::ptr
|
||||||
error_code sys_fs_fdatasync(ppu_thread& ppu, u32 fd)
|
error_code sys_fs_fdatasync(ppu_thread& ppu, u32 fd)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.trace("sys_fs_fdadasync(fd=%d)", fd);
|
sys_fs.trace("sys_fs_fdadasync(fd=%d)", fd);
|
||||||
|
|
||||||
|
|
@ -2650,6 +2636,8 @@ error_code sys_fs_fdatasync(ppu_thread& ppu, u32 fd)
|
||||||
return CELL_EBADF;
|
return CELL_EBADF;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lv2_obj::sleep(ppu);
|
||||||
|
|
||||||
std::lock_guard lock(file->mp->mutex);
|
std::lock_guard lock(file->mp->mutex);
|
||||||
|
|
||||||
if (!file->file)
|
if (!file->file)
|
||||||
|
|
@ -2664,7 +2652,6 @@ error_code sys_fs_fdatasync(ppu_thread& ppu, u32 fd)
|
||||||
error_code sys_fs_fsync(ppu_thread& ppu, u32 fd)
|
error_code sys_fs_fsync(ppu_thread& ppu, u32 fd)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.trace("sys_fs_fsync(fd=%d)", fd);
|
sys_fs.trace("sys_fs_fsync(fd=%d)", fd);
|
||||||
|
|
||||||
|
|
@ -2675,6 +2662,8 @@ error_code sys_fs_fsync(ppu_thread& ppu, u32 fd)
|
||||||
return CELL_EBADF;
|
return CELL_EBADF;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lv2_obj::sleep(ppu);
|
||||||
|
|
||||||
std::lock_guard lock(file->mp->mutex);
|
std::lock_guard lock(file->mp->mutex);
|
||||||
|
|
||||||
if (!file->file)
|
if (!file->file)
|
||||||
|
|
@ -2763,7 +2752,6 @@ error_code sys_fs_get_block_size(ppu_thread& ppu, vm::cptr<char> path, vm::ptr<u
|
||||||
error_code sys_fs_truncate(ppu_thread& ppu, vm::cptr<char> path, u64 size)
|
error_code sys_fs_truncate(ppu_thread& ppu, vm::cptr<char> path, u64 size)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.warning("sys_fs_truncate(path=%s, size=0x%llx)", path, size);
|
sys_fs.warning("sys_fs_truncate(path=%s, size=0x%llx)", path, size);
|
||||||
|
|
||||||
|
|
@ -2815,7 +2803,6 @@ error_code sys_fs_truncate(ppu_thread& ppu, vm::cptr<char> path, u64 size)
|
||||||
error_code sys_fs_ftruncate(ppu_thread& ppu, u32 fd, u64 size)
|
error_code sys_fs_ftruncate(ppu_thread& ppu, u32 fd, u64 size)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.warning("sys_fs_ftruncate(fd=%d, size=0x%llx)", fd, size);
|
sys_fs.warning("sys_fs_ftruncate(fd=%d, size=0x%llx)", fd, size);
|
||||||
|
|
||||||
|
|
@ -3021,7 +3008,6 @@ error_code sys_fs_disk_free(ppu_thread& ppu, vm::cptr<char> path, vm::ptr<u64> t
|
||||||
error_code sys_fs_utime(ppu_thread& ppu, vm::cptr<char> path, vm::cptr<CellFsUtimbuf> timep)
|
error_code sys_fs_utime(ppu_thread& ppu, vm::cptr<char> path, vm::cptr<CellFsUtimbuf> timep)
|
||||||
{
|
{
|
||||||
ppu.state += cpu_flag::wait;
|
ppu.state += cpu_flag::wait;
|
||||||
lv2_obj::sleep(ppu);
|
|
||||||
|
|
||||||
sys_fs.warning("sys_fs_utime(path=%s, timep=*0x%x)", path, timep);
|
sys_fs.warning("sys_fs_utime(path=%s, timep=*0x%x)", path, timep);
|
||||||
sys_fs.warning("** actime=%u, modtime=%u", timep->actime, timep->modtime);
|
sys_fs.warning("** actime=%u, modtime=%u", timep->actime, timep->modtime);
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue