[RFC] Renaming page_offset() to page_pos()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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()?



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux