There are two places in 2.1 where SendFileAsync falls back to a copy loop. These loops should short circuit when the client disconnects, or else the server will sit there and burn resources reading the whole file from disk.
Fix: If you passed in your own active CT we'll use it. Otherwise we'll use the RequestAborted token.