Right now we lint for clippy::cast_possible_truncation and clippy::cast_possible_wrap to catch errors that are likely to cause over/underflow or other severe bugs when handling data buffers; it turns out we should also be linting for clippy::cast_sign_loss in those cases where we're getting (for example) a buffer size as an i32 and casting it to a usize.
It looks like we have a bunch of places that fail this lint, so this might not be a quick cleanup.