[RFC] Renaming page_offset() to page_pos()

From: Matthew Wilcox
Date: Fri Apr 03 2020 - 11:33:25 EST


Without looking at the source, can you tell me what page_offset() does?

At least one regular contributor thought it meant the pgoff_t of this
page within the file. It's actually the byte offset of this page into
the file.

We have a perfectly good name for byte offset into the file --
file->f_pos. So I propose renaming it to page_pos(). To minimise
disruption to other development, I'm going to send Linus a pull request
at the end of the merge window with the results of this coccinelle script:

@@ expression a; @@
- page_offset(a)
+ page_pos(a)

I've reviewed the output and the only slight weirdness is an extra space
in casts:

btrfs_warn(BTRFS_I(page->mapping->host)->root->fs_info,
"page private not zero on page %llu",
- (unsigned long long)page_offset(page));
+ (unsigned long long) page_pos(page));

Sometimes Coccinelle fixes the surrounding whitespace to be better
than it currently is:

- ow->bv[i].bv_len = min(page_offset(ow->pages[i]) + PAGE_SIZE,
- ow->off + ow->len) -
- max(ow->off, page_offset(ow->pages[i]));
+ ow->bv[i].bv_len = min(page_pos(ow->pages[i]) + PAGE_SIZE,
+ ow->off + ow->len) -
+ max(ow->off, page_pos(ow->pages[i]));

(it's still bad, but it's an improvement)

Any objections? Anyone got a better name than page_pos()?