On Tue, Aug 30, 2016 at 01:11:05PM +0200, Cornelia Huck wrote: > On Tue, 30 Aug 2016 13:21:23 +0300 > "Michael S. Tsirkin" <m...@redhat.com> wrote: > > > BTW downstreams are building with --disable-qom-cast-debug which drops > > all QOM casts on data path - one way is to say we just make this the > > default upstream as well. Another to say that we want to distinguish > > fast path calls from slow path, this way we will be able to bring back > > some of the checks. > > I find CONFIG_QOM_CAST_DEBUG a bit inconsistent, btw: > > - for object casts, we optimize away all checks and just return the > object for !debug > - for class casts, we optimize away only the caching and still keep the > checking (why would we drop the caching if this can speed up things?) > > We certainly want to have debug turned on during development to avoid > nasty surprises later (otherwise, why even bother?), but it makes sense > to turn it off for a release. (Is there an easy way to turn it off for > the release, normal or stable, and keep it during the development > cycle?)
I think the assumption was class casts are not on data path. Ideally we'd keep it on for release too for non-datapath things, to help improve security. -- MST