FUJITA Tomonori wrote: > I don't think any functions in linux/os.c is a fast-path call. I really don't think that making sync_file_range inline affects the performance. > OK, let it be. As for fast path, sync_fine_range is called from bs_rdwr_request() but I wasn't sure what is the exact condition for doing so, should it be done for each write? > case WRITE_6: > case WRITE_10: > case WRITE_12: > case WRITE_16: > length = scsi_get_out_length(cmd); > ret = pwrite64(fd, scsi_get_out_buffer(cmd), length, > cmd->offset); > if (ret == length) { > /* > * it would be better not to access to pg > * directy. > */ > struct mode_pg *pg = cmd->dev->mode_pgs[0x8]; > > if (((cmd->scb[0] != WRITE_6) && (cmd->scb[1] & 0x8)) || > !(pg->mode_data[0] & 0x04)) > bs_sync_sync_range(cmd, length, &result, &key, > &asc); > } else > set_medium_error(&result, &key, &asc); > As I suggested, we compile bs_aio.o only with Linux. It makes sense because bs_aio is Linux specific AIO code. > OK, understood. Or -- To unsubscribe from this list: send the line "unsubscribe stgt" in the body of a message to majordomo at vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html |