v_iflag shares the cacheline with v_usecount and makes the routine show up in profiles due to cache-line ping pong.
The var is read only to check for VI_DOOMED. Dooming a vnode requires the lock behing hold across the entire process and involves setting the type to VBAD. Therefore the type can be inspected instead. It is placed in an almost read-only area which makes it a better pick. Alternatively, this can check v_op. Note the flag is not made redundant with this check because code only grabbing the interlock can do it too early to see the type change.
With the patch the routine disappears from flamegraphs during -j 104 buildkernel.