Merge with head.

--HG--
extra : convert_revision : 4fc5f595b23f72c0825d62f21efab46ed1db835b
This commit is contained in:
Gabe Black 2007-09-06 16:32:03 -07:00
commit 3e65e1d0e0
2 changed files with 8 additions and 7 deletions

View file

@ -100,15 +100,17 @@ system = System(cpu = [CPUClass(cpu_id=i) for i in xrange(np)],
system.physmem.port = system.membus.port
if options.l2cache:
system.l2 = L2Cache(size='2MB')
system.tol2bus = Bus()
system.l2.cpu_side = system.tol2bus.port
system.l2.mem_side = system.membus.port
for i in xrange(np):
if options.caches:
system.cpu[i].addPrivateSplitL1Caches(L1Cache(size = '32kB'),
L1Cache(size = '64kB'))
if options.l2cache:
system.l2 = L2Cache(size='2MB')
system.tol2bus = Bus()
system.l2.cpu_side = system.tol2bus.port
system.l2.mem_side = system.membus.port
system.cpu[i].connectMemPorts(system.tol2bus)
else:
system.cpu[i].connectMemPorts(system.membus)

View file

@ -613,12 +613,11 @@ Bus::drain(Event * de)
//We should check that we're not "doing" anything, and that noone is
//waiting. We might be idle but have someone waiting if the device we
//contacted for a retry didn't actually retry.
if (curTick >= tickNextIdle && retryList.size() == 0) {
return 0;
} else {
if (retryList.size() || (curTick < tickNextIdle && busIdle.scheduled())) {
drainEvent = de;
return 1;
}
return 0;
}
void