As pointed our by Roland we'll need to make sure req->cmd is allocated dynamically for async commands. I suspect the best way to handle that is to turn it into an actual embedded structure instead of a pointer.