Fix segfault in device_read_many()

`device_read_many()` was not detecting failed `read()` calls because `nread` was unsigned.  Bug introduced by 94b28e0d.