Lines Matching refs:wr

22 	struct orangefs_write_range *wr = NULL;  in orangefs_writepage_locked()  local
33 wr = (struct orangefs_write_range *)page_private(page); in orangefs_writepage_locked()
34 WARN_ON(wr->pos >= len); in orangefs_writepage_locked()
35 off = wr->pos; in orangefs_writepage_locked()
36 if (off + wr->len > len) in orangefs_writepage_locked()
39 wlen = wr->len; in orangefs_writepage_locked()
58 len, wr, NULL); in orangefs_writepage_locked()
65 if (wr) { in orangefs_writepage_locked()
66 kfree(wr); in orangefs_writepage_locked()
98 struct orangefs_write_range *wrp, wr; in orangefs_writepages_work() local
126 wr.uid = ow->uid; in orangefs_writepages_work()
127 wr.gid = ow->gid; in orangefs_writepages_work()
129 0, &wr, NULL); in orangefs_writepages_work()
165 struct orangefs_write_range *wr; in orangefs_writepages_callback() local
175 wr = (struct orangefs_write_range *)page_private(page); in orangefs_writepages_callback()
179 ow->off = wr->pos; in orangefs_writepages_callback()
180 ow->len = wr->len; in orangefs_writepages_callback()
181 ow->uid = wr->uid; in orangefs_writepages_callback()
182 ow->gid = wr->gid; in orangefs_writepages_callback()
187 if (!uid_eq(ow->uid, wr->uid) || !gid_eq(ow->gid, wr->gid)) { in orangefs_writepages_callback()
193 if (ow->off + ow->len == wr->pos) { in orangefs_writepages_callback()
194 ow->len += wr->len; in orangefs_writepages_callback()
393 struct orangefs_write_range *wr; in orangefs_write_begin() local
417 struct orangefs_write_range *wr; in orangefs_write_begin() local
418 wr = (struct orangefs_write_range *)page_private(page); in orangefs_write_begin()
419 if (wr->pos + wr->len == pos && in orangefs_write_begin()
420 uid_eq(wr->uid, current_fsuid()) && in orangefs_write_begin()
421 gid_eq(wr->gid, current_fsgid())) { in orangefs_write_begin()
422 wr->len += len; in orangefs_write_begin()
431 wr = kmalloc(sizeof *wr, GFP_KERNEL); in orangefs_write_begin()
432 if (!wr) in orangefs_write_begin()
435 wr->pos = pos; in orangefs_write_begin()
436 wr->len = len; in orangefs_write_begin()
437 wr->uid = current_fsuid(); in orangefs_write_begin()
438 wr->gid = current_fsgid(); in orangefs_write_begin()
440 set_page_private(page, (unsigned long)wr); in orangefs_write_begin()
485 struct orangefs_write_range *wr; in orangefs_invalidatepage() local
486 wr = (struct orangefs_write_range *)page_private(page); in orangefs_invalidatepage()
495 } else if (page_offset(page) + offset <= wr->pos && in orangefs_invalidatepage()
496 wr->pos + wr->len <= page_offset(page) + offset + length) { in orangefs_invalidatepage()
505 } else if (wr->pos < page_offset(page) + offset && in orangefs_invalidatepage()
506 wr->pos + wr->len <= page_offset(page) + offset + length && in orangefs_invalidatepage()
507 page_offset(page) + offset < wr->pos + wr->len) { in orangefs_invalidatepage()
509 x = wr->pos + wr->len - (page_offset(page) + offset); in orangefs_invalidatepage()
510 WARN_ON(x > wr->len); in orangefs_invalidatepage()
511 wr->len -= x; in orangefs_invalidatepage()
512 wr->uid = current_fsuid(); in orangefs_invalidatepage()
513 wr->gid = current_fsgid(); in orangefs_invalidatepage()
515 } else if (page_offset(page) + offset <= wr->pos && in orangefs_invalidatepage()
516 page_offset(page) + offset + length < wr->pos + wr->len && in orangefs_invalidatepage()
517 wr->pos < page_offset(page) + offset + length) { in orangefs_invalidatepage()
519 x = page_offset(page) + offset + length - wr->pos; in orangefs_invalidatepage()
520 WARN_ON(x > wr->len); in orangefs_invalidatepage()
521 wr->pos += x; in orangefs_invalidatepage()
522 wr->len -= x; in orangefs_invalidatepage()
523 wr->uid = current_fsuid(); in orangefs_invalidatepage()
524 wr->gid = current_fsgid(); in orangefs_invalidatepage()
526 } else if (wr->pos < page_offset(page) + offset && in orangefs_invalidatepage()
527 page_offset(page) + offset + length < wr->pos + wr->len) { in orangefs_invalidatepage()
539 if (!((page_offset(page) + offset + length <= wr->pos) ^ in orangefs_invalidatepage()
540 (wr->pos + wr->len <= page_offset(page) + offset))) { in orangefs_invalidatepage()
545 wr->pos, wr->len); in orangefs_invalidatepage()
726 struct orangefs_write_range *wr; in orangefs_page_mkwrite() local
748 wr = (struct orangefs_write_range *)page_private(page); in orangefs_page_mkwrite()
749 if (uid_eq(wr->uid, current_fsuid()) && in orangefs_page_mkwrite()
750 gid_eq(wr->gid, current_fsgid())) { in orangefs_page_mkwrite()
751 wr->pos = page_offset(page); in orangefs_page_mkwrite()
752 wr->len = PAGE_SIZE; in orangefs_page_mkwrite()
761 wr = kmalloc(sizeof *wr, GFP_KERNEL); in orangefs_page_mkwrite()
762 if (!wr) { in orangefs_page_mkwrite()
766 wr->pos = page_offset(page); in orangefs_page_mkwrite()
767 wr->len = PAGE_SIZE; in orangefs_page_mkwrite()
768 wr->uid = current_fsuid(); in orangefs_page_mkwrite()
769 wr->gid = current_fsgid(); in orangefs_page_mkwrite()
771 set_page_private(page, (unsigned long)wr); in orangefs_page_mkwrite()