• Home
  • Raw
  • Download

Lines Matching refs:iocb

2189 ssize_t generic_file_buffered_read(struct kiocb *iocb,  in generic_file_buffered_read()  argument
2192 struct file *filp = iocb->ki_filp; in generic_file_buffered_read()
2196 loff_t *ppos = &iocb->ki_pos; in generic_file_buffered_read()
2219 if (written && (iocb->ki_flags & IOCB_WAITQ)) in generic_file_buffered_read()
2220 iocb->ki_flags |= IOCB_NOWAIT; in generic_file_buffered_read()
2237 if (iocb->ki_flags & IOCB_NOIO) in generic_file_buffered_read()
2247 if (iocb->ki_flags & IOCB_NOIO) { in generic_file_buffered_read()
2261 if (iocb->ki_flags & IOCB_WAITQ) { in generic_file_buffered_read()
2267 iocb->ki_waitq); in generic_file_buffered_read()
2269 if (iocb->ki_flags & IOCB_NOWAIT) { in generic_file_buffered_read()
2362 if (iocb->ki_flags & IOCB_WAITQ) { in generic_file_buffered_read()
2367 error = lock_page_async(page, iocb->ki_waitq); in generic_file_buffered_read()
2389 if (iocb->ki_flags & (IOCB_NOIO | IOCB_NOWAIT)) { in generic_file_buffered_read()
2413 if (iocb->ki_flags & IOCB_WAITQ) { in generic_file_buffered_read()
2418 error = lock_page_async(page, iocb->ki_waitq); in generic_file_buffered_read()
2507 generic_file_read_iter(struct kiocb *iocb, struct iov_iter *iter) in generic_file_read_iter() argument
2515 if (iocb->ki_flags & IOCB_DIRECT) { in generic_file_read_iter()
2516 struct file *file = iocb->ki_filp; in generic_file_read_iter()
2522 if (iocb->ki_flags & IOCB_NOWAIT) { in generic_file_read_iter()
2523 if (filemap_range_has_page(mapping, iocb->ki_pos, in generic_file_read_iter()
2524 iocb->ki_pos + count - 1)) in generic_file_read_iter()
2528 iocb->ki_pos, in generic_file_read_iter()
2529 iocb->ki_pos + count - 1); in generic_file_read_iter()
2536 retval = mapping->a_ops->direct_IO(iocb, iter); in generic_file_read_iter()
2538 iocb->ki_pos += retval; in generic_file_read_iter()
2552 if (retval < 0 || !count || iocb->ki_pos >= size || in generic_file_read_iter()
2557 retval = generic_file_buffered_read(iocb, iter, retval); in generic_file_read_iter()
3189 generic_file_direct_write(struct kiocb *iocb, struct iov_iter *from) in generic_file_direct_write() argument
3191 struct file *file = iocb->ki_filp; in generic_file_direct_write()
3194 loff_t pos = iocb->ki_pos; in generic_file_direct_write()
3202 if (iocb->ki_flags & IOCB_NOWAIT) { in generic_file_direct_write()
3232 written = mapping->a_ops->direct_IO(iocb, from); in generic_file_direct_write()
3262 iocb->ki_pos = pos; in generic_file_direct_write()
3397 ssize_t __generic_file_write_iter(struct kiocb *iocb, struct iov_iter *from) in __generic_file_write_iter() argument
3399 struct file *file = iocb->ki_filp; in __generic_file_write_iter()
3416 if (iocb->ki_flags & IOCB_DIRECT) { in __generic_file_write_iter()
3419 written = generic_file_direct_write(iocb, from); in __generic_file_write_iter()
3430 status = generic_perform_write(file, from, pos = iocb->ki_pos); in __generic_file_write_iter()
3450 iocb->ki_pos = endbyte + 1; in __generic_file_write_iter()
3462 written = generic_perform_write(file, from, iocb->ki_pos); in __generic_file_write_iter()
3464 iocb->ki_pos += written; in __generic_file_write_iter()
3485 ssize_t generic_file_write_iter(struct kiocb *iocb, struct iov_iter *from) in generic_file_write_iter() argument
3487 struct file *file = iocb->ki_filp; in generic_file_write_iter()
3492 ret = generic_write_checks(iocb, from); in generic_file_write_iter()
3494 ret = __generic_file_write_iter(iocb, from); in generic_file_write_iter()
3498 ret = generic_write_sync(iocb, ret); in generic_file_write_iter()