As are all non-wheeled bags, the Osprey Porter 46L is, within some limits, flexible and, if not stretched to the limit of its packed volume, will distort to fit other shapes.
Osprey "claims" that the volume is 2807 cu in, but they don't say if that is the volume the bag, packed, will occupy, or if it is the volume of "stuff" you can put in it. I think they are trying to convince you it is the volume you can stuff your stuff into, but airlines measure the outside dimensions of the bag. I understand (maybe Frank II can enlighten us) that luggage makers determine the capacity by stuffing a bag as full as they can with a small sized, solid material (sand?), then pouring it out into a graduated container and measuring the volume of the material. But, when the bag is stuffed full, they don't check to see if it has exceeded any of the specified dimensions. Example, if a perfect rectangular solid, with right-angle edges and pointed corners, 22x14x9 (the maximum dimensions of the Osprey Porter 46L, as reported on their website), would be 2772 cu in, not over 2800, as claimed by Osprey, and that doesn't include the volume (minimum 80 cu in) occupied by their 3.3# pack, itself.
I wouldn't worry about the height being over by ½ inch. The top fifth of the bag, if you see it in profile, is triangular and comprises, amongst other things, a "top accessory pocket". Don't fill that pocket and it should compress to 21½" without losing much volume.