All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joel Becker <jlbec@evilplan.org>
To: ocfs2-devel@oss.oracle.com
Subject: [Ocfs2-devel] [PATCH] ocfs2: Simplify ocfs2_invalidatepage() and ocfs2_releasepage()
Date: Fri, 21 Dec 2012 17:33:21 -0800	[thread overview]
Message-ID: <20121222013320.GA27186@localhost> (raw)
In-Reply-To: <1356132395-7081-1-git-send-email-jack@suse.cz>

On Sat, Dec 22, 2012 at 12:26:35AM +0100, Jan Kara wrote:
> Ocfs2 doesn't do data journalling. Thus its ->invalidatepage and ->releasepage
> functions never get called on buffers that have journal heads attached. So
> just use standard variants of functions from buffer.c.

Indeed, we do not.  I suppose if we ever use readpage, etc for our
dirblocks we'll have to revisit this.

Do you want me to send this along?

Joel

> Signed-off-by: Jan Kara <jack@suse.cz>
> ---
>  fs/ocfs2/aops.c |   18 ++----------------
>  1 files changed, 2 insertions(+), 16 deletions(-)
> 
> diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c
> index 6577432..6166cdd 100644
> --- a/fs/ocfs2/aops.c
> +++ b/fs/ocfs2/aops.c
> @@ -598,25 +598,11 @@ static void ocfs2_dio_end_io(struct kiocb *iocb,
>  	inode_dio_done(inode);
>  }
>  
> -/*
> - * ocfs2_invalidatepage() and ocfs2_releasepage() are shamelessly stolen
> - * from ext3.  PageChecked() bits have been removed as OCFS2 does not
> - * do journalled data.
> - */
> -static void ocfs2_invalidatepage(struct page *page, unsigned long offset)
> -{
> -	journal_t *journal = OCFS2_SB(page->mapping->host->i_sb)->journal->j_journal;
> -
> -	jbd2_journal_invalidatepage(journal, page, offset);
> -}
> -
>  static int ocfs2_releasepage(struct page *page, gfp_t wait)
>  {
> -	journal_t *journal = OCFS2_SB(page->mapping->host->i_sb)->journal->j_journal;
> -
>  	if (!page_has_buffers(page))
>  		return 0;
> -	return jbd2_journal_try_to_free_buffers(journal, page, wait);
> +	return try_to_free_buffers(page);
>  }
>  
>  static ssize_t ocfs2_direct_IO(int rw,
> @@ -2091,7 +2077,7 @@ const struct address_space_operations ocfs2_aops = {
>  	.write_end		= ocfs2_write_end,
>  	.bmap			= ocfs2_bmap,
>  	.direct_IO		= ocfs2_direct_IO,
> -	.invalidatepage		= ocfs2_invalidatepage,
> +	.invalidatepage		= block_invalidatepage,
>  	.releasepage		= ocfs2_releasepage,
>  	.migratepage		= buffer_migrate_page,
>  	.is_partially_uptodate	= block_is_partially_uptodate,
> -- 
> 1.7.1
> 

-- 

"But then she looks me in the eye
 And says, 'We're going to last forever,'
 And man you know I can't begin to doubt it.
 Cause it just feels so good and so free and so right,
 I know we ain't never going to change our minds about it, Hey!
 Here comes my girl."

			http://www.jlbec.org/
			jlbec at evilplan.org

  reply	other threads:[~2012-12-22  1:33 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-21 23:26 [Ocfs2-devel] [PATCH] ocfs2: Simplify ocfs2_invalidatepage() and ocfs2_releasepage() Jan Kara
2012-12-22  1:33 ` Joel Becker [this message]
2012-12-22  1:41   ` Jan Kara
  -- strict thread matches above, loose matches on Subject: below --
2013-11-11 21:51 Jan Kara
2013-11-13 13:41 ` Joel Becker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20121222013320.GA27186@localhost \
    --to=jlbec@evilplan.org \
    --cc=ocfs2-devel@oss.oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.