diff -r 76718cb08673 -r 7d5c6434fd41 configs/common/CacheConfig.py --- a/configs/common/CacheConfig.py Tue Jul 12 08:10:22 2016 +0100 +++ b/configs/common/CacheConfig.py Tue Jul 12 08:10:41 2016 +0100 @@ -162,11 +162,6 @@ else: system.cpu[i].connectAllPorts(system.membus) - # Add a snoop filter to the membus if there are caches above it - if (options.l2cache or options.caches) and \ - (system.membus.snoop_filter == NULL): - system.membus.snoop_filter = SnoopFilter() - return system # ExternalSlave provides a "port", but when that port connects to a cache, diff -r 76718cb08673 -r 7d5c6434fd41 src/mem/XBar.py --- a/src/mem/XBar.py Tue Jul 12 08:10:22 2016 +0100 +++ b/src/mem/XBar.py Tue Jul 12 08:10:41 2016 +0100 @@ -153,6 +153,9 @@ response_latency = 2 snoop_response_latency = 4 + # Use a snoop-filter by default + snoop_filter = SnoopFilter(lookup_latency = 1) + # This specialisation of the coherent crossbar is to be considered # the point of coherency, as there are no (coherent) downstream # caches. diff -r 76718cb08673 -r 7d5c6434fd41 tests/configs/base_config.py --- a/tests/configs/base_config.py Tue Jul 12 08:10:22 2016 +0100 +++ b/tests/configs/base_config.py Tue Jul 12 08:10:41 2016 +0100 @@ -126,9 +126,6 @@ cpu.createInterruptController() cpu.connectAllPorts(sha_bus if sha_bus != None else system.membus, system.membus) - # System has caches before the membus -> add snoop filter - if sha_bus and system.membus.snoop_filter == NULL: - system.membus.snoop_filter = SnoopFilter() def init_kvm(self, system): """Do KVM-specific system initialization. @@ -152,9 +149,7 @@ self.init_kvm(system) sha_bus = self.create_caches_shared(system) - # System has caches before the membus -> add snoop filter - if sha_bus and system.membus.snoop_filter == NULL: - system.membus.snoop_filter = SnoopFilter() + for cpu in system.cpu: self.init_cpu(system, cpu, sha_bus)