Merge pull request #1006 from Nekotekina/master

Small fix
This commit is contained in:
B1ackDaemon 2015-02-12 10:56:43 +02:00
commit 4d5bdf1419
2 changed files with 10 additions and 10 deletions

View File

@ -2660,7 +2660,7 @@ s64 cellSpursCreateTaskset(vm::ptr<CellSpurs> spurs, vm::ptr<CellSpursTaskset> t
return CELL_OK; return CELL_OK;
#endif #endif
return spursCreateTaskset(spurs, taskset, args, priority, maxContention, vm::ptr<const char>::make(0), CellSpursTaskset::size, 0); return spursCreateTaskset(spurs, taskset, args, priority, maxContention, vm::ptr<const char>::make(0), 6400/*CellSpursTaskset::size*/, 0);
} }
s64 cellSpursJoinTaskset(vm::ptr<CellSpursTaskset> taskset) s64 cellSpursJoinTaskset(vm::ptr<CellSpursTaskset> taskset)
@ -2990,7 +2990,7 @@ s64 cellSpursTasksetAttributeSetTasksetSize(vm::ptr<CellSpursTasksetAttribute> a
return CELL_SPURS_TASK_ERROR_ALIGN; return CELL_SPURS_TASK_ERROR_ALIGN;
} }
if (size != CellSpursTaskset::size && size != CellSpursTaskset2::size) if (size != 6400/*CellSpursTaskset::size*/ && size != CellSpursTaskset2::size)
{ {
return CELL_SPURS_TASK_ERROR_INVAL; return CELL_SPURS_TASK_ERROR_INVAL;
} }
@ -3425,7 +3425,7 @@ s64 _cellSpursTasksetAttributeInitialize(vm::ptr<CellSpursTasksetAttribute> attr
attribute->m.sdk_version = sdk_version; attribute->m.sdk_version = sdk_version;
attribute->m.args = args; attribute->m.args = args;
memcpy(attribute->m.priority, priority.get_ptr(), 8); memcpy(attribute->m.priority, priority.get_ptr(), 8);
attribute->m.taskset_size = CellSpursTaskset::size; attribute->m.taskset_size = 6400/*CellSpursTaskset::size*/;
attribute->m.max_contention = max_contention; attribute->m.max_contention = max_contention;
return CELL_OK; return CELL_OK;
#endif #endif

View File

@ -525,12 +525,12 @@ bool spursKernelWorkloadExit(SPUThread & spu) {
/// SPURS kernel entry point /// SPURS kernel entry point
bool spursKernelEntry(SPUThread & spu) { bool spursKernelEntry(SPUThread & spu) {
//while (true) { while (true) {
// std::this_thread::sleep_for(std::chrono::milliseconds(100)); std::this_thread::sleep_for(std::chrono::milliseconds(100));
// if (Emu.IsStopped()) { if (Emu.IsStopped()) {
// return false; return false;
// } }
//} }
auto ctxt = vm::get_ptr<SpursKernelContext>(spu.ls_offset + 0x100); auto ctxt = vm::get_ptr<SpursKernelContext>(spu.ls_offset + 0x100);
memset(ctxt, 0, sizeof(SpursKernelContext)); memset(ctxt, 0, sizeof(SpursKernelContext));
@ -598,7 +598,7 @@ void spursSysServiceIdleHandler(SPUThread & spu, SpursKernelContext * ctxt) {
bool shouldExit; bool shouldExit;
while (true) { while (true) {
vm::reservation_acquire(vm::get_ptr(spu.ls_offset + 0x100), vm::cast(ctxt->spurs.addr()), 128/*, [&spu](){ spu.Notify(); }*/); vm::reservation_acquire(vm::get_ptr(spu.ls_offset + 0x100), vm::cast(ctxt->spurs.addr()), 128, [&spu](){ spu.Notify(); });
auto spurs = vm::get_ptr<CellSpurs>(spu.ls_offset + 0x100); auto spurs = vm::get_ptr<CellSpurs>(spu.ls_offset + 0x100);
// Find the number of SPUs that are idling in this SPURS instance // Find the number of SPUs that are idling in this SPURS instance