On 24 September 2013 19:44, Marcel Apfelbaum <marce...@redhat.com> wrote: > We need to check all the bridges on each bus encountered > for their address range; if it corresponds to the transaction address, > we pass the bridge to the other bus(depending on transaction's direction).
I haven't looked at all at the details, but you can probably rephrase this kind of "check address against range and pass recursively to other bridge" algorithm in terms of appropriate statically constructed memory regions. Since "transaction aborted" is definitely not a fast path, the only argument for doing it that way would be if the code worked out more neatly -- maybe worth thinking about whether it would do so? -- PMM