Linux: writes are split into 512K chunks
问题 I have a user-space application that generates big SCSI writes (details below). However, when I'm looking at the SCSI commands that reach the SCSI target (i.e. the storage, connected by the FC) something is splitting these writes into 512K chunks. The application basically does 1M-sized direct writes directly into the device: fd = open("/dev/sdab", ..|O_DIRECT); write(fd, ..., 1024 * 1024); This code causes two SCSI WRITEs to be sent, 512K each. However, if I issue a direct SCSI command,