Lines Matching refs:wr
23 struct orangefs_write_range *wr = NULL; in orangefs_writepage_locked() local
34 wr = (struct orangefs_write_range *)page_private(page); in orangefs_writepage_locked()
35 WARN_ON(wr->pos >= len); in orangefs_writepage_locked()
36 off = wr->pos; in orangefs_writepage_locked()
37 if (off + wr->len > len) in orangefs_writepage_locked()
40 wlen = wr->len; in orangefs_writepage_locked()
59 len, wr, NULL, NULL); in orangefs_writepage_locked()
94 struct orangefs_write_range *wrp, wr; in orangefs_writepages_work() local
122 wr.uid = ow->uid; in orangefs_writepages_work()
123 wr.gid = ow->gid; in orangefs_writepages_work()
125 0, &wr, NULL, NULL); in orangefs_writepages_work()
161 struct orangefs_write_range *wr; in orangefs_writepages_callback() local
171 wr = (struct orangefs_write_range *)page_private(page); in orangefs_writepages_callback()
175 ow->off = wr->pos; in orangefs_writepages_callback()
176 ow->len = wr->len; in orangefs_writepages_callback()
177 ow->uid = wr->uid; in orangefs_writepages_callback()
178 ow->gid = wr->gid; in orangefs_writepages_callback()
183 if (!uid_eq(ow->uid, wr->uid) || !gid_eq(ow->gid, wr->gid)) { in orangefs_writepages_callback()
189 if (ow->off + ow->len == wr->pos) { in orangefs_writepages_callback()
190 ow->len += wr->len; in orangefs_writepages_callback()
329 struct orangefs_write_range *wr; in orangefs_write_begin() local
355 struct orangefs_write_range *wr; in orangefs_write_begin() local
356 wr = folio_get_private(folio); in orangefs_write_begin()
357 if (wr->pos + wr->len == pos && in orangefs_write_begin()
358 uid_eq(wr->uid, current_fsuid()) && in orangefs_write_begin()
359 gid_eq(wr->gid, current_fsgid())) { in orangefs_write_begin()
360 wr->len += len; in orangefs_write_begin()
369 wr = kmalloc(sizeof *wr, GFP_KERNEL); in orangefs_write_begin()
370 if (!wr) in orangefs_write_begin()
373 wr->pos = pos; in orangefs_write_begin()
374 wr->len = len; in orangefs_write_begin()
375 wr->uid = current_fsuid(); in orangefs_write_begin()
376 wr->gid = current_fsgid(); in orangefs_write_begin()
377 folio_attach_private(folio, wr); in orangefs_write_begin()
420 struct orangefs_write_range *wr = folio_get_private(folio); in orangefs_invalidate_folio() local
426 } else if (folio_pos(folio) + offset <= wr->pos && in orangefs_invalidate_folio()
427 wr->pos + wr->len <= folio_pos(folio) + offset + length) { in orangefs_invalidate_folio()
433 } else if (wr->pos < folio_pos(folio) + offset && in orangefs_invalidate_folio()
434 wr->pos + wr->len <= folio_pos(folio) + offset + length && in orangefs_invalidate_folio()
435 folio_pos(folio) + offset < wr->pos + wr->len) { in orangefs_invalidate_folio()
437 x = wr->pos + wr->len - (folio_pos(folio) + offset); in orangefs_invalidate_folio()
438 WARN_ON(x > wr->len); in orangefs_invalidate_folio()
439 wr->len -= x; in orangefs_invalidate_folio()
440 wr->uid = current_fsuid(); in orangefs_invalidate_folio()
441 wr->gid = current_fsgid(); in orangefs_invalidate_folio()
443 } else if (folio_pos(folio) + offset <= wr->pos && in orangefs_invalidate_folio()
444 folio_pos(folio) + offset + length < wr->pos + wr->len && in orangefs_invalidate_folio()
445 wr->pos < folio_pos(folio) + offset + length) { in orangefs_invalidate_folio()
447 x = folio_pos(folio) + offset + length - wr->pos; in orangefs_invalidate_folio()
448 WARN_ON(x > wr->len); in orangefs_invalidate_folio()
449 wr->pos += x; in orangefs_invalidate_folio()
450 wr->len -= x; in orangefs_invalidate_folio()
451 wr->uid = current_fsuid(); in orangefs_invalidate_folio()
452 wr->gid = current_fsgid(); in orangefs_invalidate_folio()
454 } else if (wr->pos < folio_pos(folio) + offset && in orangefs_invalidate_folio()
455 folio_pos(folio) + offset + length < wr->pos + wr->len) { in orangefs_invalidate_folio()
467 if (!((folio_pos(folio) + offset + length <= wr->pos) ^ in orangefs_invalidate_folio()
468 (wr->pos + wr->len <= folio_pos(folio) + offset))) { in orangefs_invalidate_folio()
473 wr->pos, wr->len); in orangefs_invalidate_folio()
650 struct orangefs_write_range *wr; in orangefs_page_mkwrite() local
672 wr = folio_get_private(folio); in orangefs_page_mkwrite()
673 if (uid_eq(wr->uid, current_fsuid()) && in orangefs_page_mkwrite()
674 gid_eq(wr->gid, current_fsgid())) { in orangefs_page_mkwrite()
675 wr->pos = page_offset(vmf->page); in orangefs_page_mkwrite()
676 wr->len = PAGE_SIZE; in orangefs_page_mkwrite()
685 wr = kmalloc(sizeof *wr, GFP_KERNEL); in orangefs_page_mkwrite()
686 if (!wr) { in orangefs_page_mkwrite()
690 wr->pos = page_offset(vmf->page); in orangefs_page_mkwrite()
691 wr->len = PAGE_SIZE; in orangefs_page_mkwrite()
692 wr->uid = current_fsuid(); in orangefs_page_mkwrite()
693 wr->gid = current_fsgid(); in orangefs_page_mkwrite()
694 folio_attach_private(folio, wr); in orangefs_page_mkwrite()