From: Jan Kara <jack@suse.cz>
To: Ross Zwisler <ross.zwisler@linux.intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org,
"Darrick J. Wong" <darrick.wong@oracle.com>,
Theodore Ts'o <tytso@mit.edu>,
Alexander Viro <viro@zeniv.linux.org.uk>,
Andreas Dilger <adilger.kernel@dilger.ca>,
Christoph Hellwig <hch@lst.de>,
Dan Williams <dan.j.williams@intel.com>,
Dave Chinner <david@fromorbit.com>,
David Airlie <airlied@linux.ie>, Ingo Molnar <mingo@redhat.com>,
Inki Dae <inki.dae@samsung.com>, Jan Kara <jack@suse.cz>,
Jonathan Corbet <corbet@lwn.net>,
Joonyoung Shim <jy0922.shim@samsung.com>,
Krzysztof Kozlowski <krzk@kernel.org>,
Kukjin Kim <kgene@kernel.org>,
Kyungmin Park <kyungmin.park@samsung.com>,
Matthew Wilcox <mawilcox@microsoft.com>,
Patrik Jakobsson <patrik.r.jakobsson@gmail.com>,
Rob Clark <robdclark@gmail.com>,
Seung-Woo Kim <sw0312.kim@samsung.com>,
Steven Rostedt <rostedt@goodmis.org>, Tomi Valkeinen <tomi.>
Subject: Re: [PATCH v4 4/5] dax: remove DAX code from page_cache_tree_insert()
Date: Mon, 24 Jul 2017 13:47:38 +0200 [thread overview]
Message-ID: <20170724114738.GL652@quack2.suse.cz> (raw)
In-Reply-To: <20170721223956.29485-5-ross.zwisler@linux.intel.com>
On Fri 21-07-17 16:39:54, Ross Zwisler wrote:
> Now that we no longer insert struct page pointers in DAX radix trees we can
> remove the special casing for DAX in page_cache_tree_insert(). This also
> allows us to make dax_wake_mapping_entry_waiter() local to fs/dax.c,
> removing it from dax.h.
>
> Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
> Suggested-by: Jan Kara <jack@suse.cz>
Looks good. You can add:
Reviewed-by: Jan Kara <jack@suse.cz>
Honza
> ---
> fs/dax.c | 2 +-
> include/linux/dax.h | 2 --
> mm/filemap.c | 13 ++-----------
> 3 files changed, 3 insertions(+), 14 deletions(-)
>
> diff --git a/fs/dax.c b/fs/dax.c
> index fb0e4c1..0e27d90 100644
> --- a/fs/dax.c
> +++ b/fs/dax.c
> @@ -127,7 +127,7 @@ static int wake_exceptional_entry_func(wait_queue_entry_t *wait, unsigned int mo
> * correct waitqueue where tasks might be waiting for that old 'entry' and
> * wake them.
> */
> -void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> +static void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> pgoff_t index, void *entry, bool wake_all)
> {
> struct exceptional_entry_key key;
> diff --git a/include/linux/dax.h b/include/linux/dax.h
> index 29cced8..afa99bb 100644
> --- a/include/linux/dax.h
> +++ b/include/linux/dax.h
> @@ -122,8 +122,6 @@ int dax_iomap_fault(struct vm_fault *vmf, enum page_entry_size pe_size,
> int dax_delete_mapping_entry(struct address_space *mapping, pgoff_t index);
> int dax_invalidate_mapping_entry_sync(struct address_space *mapping,
> pgoff_t index);
> -void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> - pgoff_t index, void *entry, bool wake_all);
>
> #ifdef CONFIG_FS_DAX
> int __dax_zero_page_range(struct block_device *bdev,
> diff --git a/mm/filemap.c b/mm/filemap.c
> index a497024..1bf1265 100644
> --- a/mm/filemap.c
> +++ b/mm/filemap.c
> @@ -130,17 +130,8 @@ static int page_cache_tree_insert(struct address_space *mapping,
> return -EEXIST;
>
> mapping->nrexceptional--;
> - if (!dax_mapping(mapping)) {
> - if (shadowp)
> - *shadowp = p;
> - } else {
> - /* DAX can replace empty locked entry with a hole */
> - WARN_ON_ONCE(p !=
> - dax_radix_locked_entry(0, RADIX_DAX_EMPTY));
> - /* Wakeup waiters for exceptional entry lock */
> - dax_wake_mapping_entry_waiter(mapping, page->index, p,
> - true);
> - }
> + if (shadowp)
> + *shadowp = p;
> }
> __radix_tree_replace(&mapping->page_tree, node, slot, page,
> workingset_update_node, mapping);
> --
> 2.9.4
>
--
Jan Kara <jack@suse.com>
SUSE Labs, CR
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
WARNING: multiple messages have this Message-ID (diff)
From: Jan Kara <jack@suse.cz>
To: Ross Zwisler <ross.zwisler@linux.intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org,
"Darrick J. Wong" <darrick.wong@oracle.com>,
Theodore Ts'o <tytso@mit.edu>,
Alexander Viro <viro@zeniv.linux.org.uk>,
Andreas Dilger <adilger.kernel@dilger.ca>,
Christoph Hellwig <hch@lst.de>,
Dan Williams <dan.j.williams@intel.com>,
Dave Chinner <david@fromorbit.com>,
David Airlie <airlied@linux.ie>, Ingo Molnar <mingo@redhat.com>,
Inki Dae <inki.dae@samsung.com>, Jan Kara <jack@suse.cz>,
Jonathan Corbet <corbet@lwn.net>,
Joonyoung Shim <jy0922.shim@samsung.com>,
Krzysztof Kozlowski <krzk@kernel.org>,
Kukjin Kim <kgene@kernel.org>,
Kyungmin Park <kyungmin.park@samsung.com>,
Matthew Wilcox <mawilcox@microsoft.com>,
Patrik Jakobsson <patrik.r.jakobsson@gmail.com>,
Rob Clark <robdclark@gmail.com>,
Seung-Woo Kim <sw0312.kim@samsung.com>,
Steven Rostedt <rostedt@goodmis.org>, Tomi Valkeinen <tomi.
Subject: Re: [PATCH v4 4/5] dax: remove DAX code from page_cache_tree_insert()
Date: Mon, 24 Jul 2017 13:47:38 +0200 [thread overview]
Message-ID: <20170724114738.GL652@quack2.suse.cz> (raw)
In-Reply-To: <20170721223956.29485-5-ross.zwisler@linux.intel.com>
On Fri 21-07-17 16:39:54, Ross Zwisler wrote:
> Now that we no longer insert struct page pointers in DAX radix trees we can
> remove the special casing for DAX in page_cache_tree_insert(). This also
> allows us to make dax_wake_mapping_entry_waiter() local to fs/dax.c,
> removing it from dax.h.
>
> Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
> Suggested-by: Jan Kara <jack@suse.cz>
Looks good. You can add:
Reviewed-by: Jan Kara <jack@suse.cz>
Honza
> ---
> fs/dax.c | 2 +-
> include/linux/dax.h | 2 --
> mm/filemap.c | 13 ++-----------
> 3 files changed, 3 insertions(+), 14 deletions(-)
>
> diff --git a/fs/dax.c b/fs/dax.c
> index fb0e4c1..0e27d90 100644
> --- a/fs/dax.c
> +++ b/fs/dax.c
> @@ -127,7 +127,7 @@ static int wake_exceptional_entry_func(wait_queue_entry_t *wait, unsigned int mo
> * correct waitqueue where tasks might be waiting for that old 'entry' and
> * wake them.
> */
> -void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> +static void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> pgoff_t index, void *entry, bool wake_all)
> {
> struct exceptional_entry_key key;
> diff --git a/include/linux/dax.h b/include/linux/dax.h
> index 29cced8..afa99bb 100644
> --- a/include/linux/dax.h
> +++ b/include/linux/dax.h
> @@ -122,8 +122,6 @@ int dax_iomap_fault(struct vm_fault *vmf, enum page_entry_size pe_size,
> int dax_delete_mapping_entry(struct address_space *mapping, pgoff_t index);
> int dax_invalidate_mapping_entry_sync(struct address_space *mapping,
> pgoff_t index);
> -void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> - pgoff_t index, void *entry, bool wake_all);
>
> #ifdef CONFIG_FS_DAX
> int __dax_zero_page_range(struct block_device *bdev,
> diff --git a/mm/filemap.c b/mm/filemap.c
> index a497024..1bf1265 100644
> --- a/mm/filemap.c
> +++ b/mm/filemap.c
> @@ -130,17 +130,8 @@ static int page_cache_tree_insert(struct address_space *mapping,
> return -EEXIST;
>
> mapping->nrexceptional--;
> - if (!dax_mapping(mapping)) {
> - if (shadowp)
> - *shadowp = p;
> - } else {
> - /* DAX can replace empty locked entry with a hole */
> - WARN_ON_ONCE(p !=
> - dax_radix_locked_entry(0, RADIX_DAX_EMPTY));
> - /* Wakeup waiters for exceptional entry lock */
> - dax_wake_mapping_entry_waiter(mapping, page->index, p,
> - true);
> - }
> + if (shadowp)
> + *shadowp = p;
> }
> __radix_tree_replace(&mapping->page_tree, node, slot, page,
> workingset_update_node, mapping);
> --
> 2.9.4
>
--
Jan Kara <jack@suse.com>
SUSE Labs, CR
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
WARNING: multiple messages have this Message-ID (diff)
From: Jan Kara <jack@suse.cz>
To: Ross Zwisler <ross.zwisler@linux.intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org,
"Darrick J. Wong" <darrick.wong@oracle.com>,
Theodore Ts'o <tytso@mit.edu>,
Alexander Viro <viro@zeniv.linux.org.uk>,
Andreas Dilger <adilger.kernel@dilger.ca>,
Christoph Hellwig <hch@lst.de>,
Dan Williams <dan.j.williams@intel.com>,
Dave Chinner <david@fromorbit.com>,
David Airlie <airlied@linux.ie>, Ingo Molnar <mingo@redhat.com>,
Inki Dae <inki.dae@samsung.com>, Jan Kara <jack@suse.cz>,
Jonathan Corbet <corbet@lwn.net>,
Joonyoung Shim <jy0922.shim@samsung.com>,
Krzysztof Kozlowski <krzk@kernel.org>,
Kukjin Kim <kgene@kernel.org>,
Kyungmin Park <kyungmin.park@samsung.com>,
Matthew Wilcox <mawilcox@microsoft.com>,
Patrik Jakobsson <patrik.r.jakobsson@gmail.com>,
Rob Clark <robdclark@gmail.com>,
Seung-Woo Kim <sw0312.kim@samsung.com>,
Steven Rostedt <rostedt@goodmis.org>,
Tomi Valkeinen <tomi.valkeinen@ti.com>,
dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org,
linux-arm-kernel@lists.infradead.org,
linux-arm-msm@vger.kernel.org, linux-doc@vger.kernel.org,
linux-ext4@vger.kernel.org, linux-fsdevel@vger.kernel.org,
linux-mm@kvack.org, linux-nvdimm@lists.01.org,
linux-samsung-soc@vger.kernel.org, linux-xfs@vger.kernel.org
Subject: Re: [PATCH v4 4/5] dax: remove DAX code from page_cache_tree_insert()
Date: Mon, 24 Jul 2017 13:47:38 +0200 [thread overview]
Message-ID: <20170724114738.GL652@quack2.suse.cz> (raw)
In-Reply-To: <20170721223956.29485-5-ross.zwisler@linux.intel.com>
On Fri 21-07-17 16:39:54, Ross Zwisler wrote:
> Now that we no longer insert struct page pointers in DAX radix trees we can
> remove the special casing for DAX in page_cache_tree_insert(). This also
> allows us to make dax_wake_mapping_entry_waiter() local to fs/dax.c,
> removing it from dax.h.
>
> Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
> Suggested-by: Jan Kara <jack@suse.cz>
Looks good. You can add:
Reviewed-by: Jan Kara <jack@suse.cz>
Honza
> ---
> fs/dax.c | 2 +-
> include/linux/dax.h | 2 --
> mm/filemap.c | 13 ++-----------
> 3 files changed, 3 insertions(+), 14 deletions(-)
>
> diff --git a/fs/dax.c b/fs/dax.c
> index fb0e4c1..0e27d90 100644
> --- a/fs/dax.c
> +++ b/fs/dax.c
> @@ -127,7 +127,7 @@ static int wake_exceptional_entry_func(wait_queue_entry_t *wait, unsigned int mo
> * correct waitqueue where tasks might be waiting for that old 'entry' and
> * wake them.
> */
> -void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> +static void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> pgoff_t index, void *entry, bool wake_all)
> {
> struct exceptional_entry_key key;
> diff --git a/include/linux/dax.h b/include/linux/dax.h
> index 29cced8..afa99bb 100644
> --- a/include/linux/dax.h
> +++ b/include/linux/dax.h
> @@ -122,8 +122,6 @@ int dax_iomap_fault(struct vm_fault *vmf, enum page_entry_size pe_size,
> int dax_delete_mapping_entry(struct address_space *mapping, pgoff_t index);
> int dax_invalidate_mapping_entry_sync(struct address_space *mapping,
> pgoff_t index);
> -void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> - pgoff_t index, void *entry, bool wake_all);
>
> #ifdef CONFIG_FS_DAX
> int __dax_zero_page_range(struct block_device *bdev,
> diff --git a/mm/filemap.c b/mm/filemap.c
> index a497024..1bf1265 100644
> --- a/mm/filemap.c
> +++ b/mm/filemap.c
> @@ -130,17 +130,8 @@ static int page_cache_tree_insert(struct address_space *mapping,
> return -EEXIST;
>
> mapping->nrexceptional--;
> - if (!dax_mapping(mapping)) {
> - if (shadowp)
> - *shadowp = p;
> - } else {
> - /* DAX can replace empty locked entry with a hole */
> - WARN_ON_ONCE(p !=
> - dax_radix_locked_entry(0, RADIX_DAX_EMPTY));
> - /* Wakeup waiters for exceptional entry lock */
> - dax_wake_mapping_entry_waiter(mapping, page->index, p,
> - true);
> - }
> + if (shadowp)
> + *shadowp = p;
> }
> __radix_tree_replace(&mapping->page_tree, node, slot, page,
> workingset_update_node, mapping);
> --
> 2.9.4
>
--
Jan Kara <jack@suse.com>
SUSE Labs, CR
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
WARNING: multiple messages have this Message-ID (diff)
From: Jan Kara <jack@suse.cz>
To: Ross Zwisler <ross.zwisler@linux.intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org,
"Darrick J. Wong" <darrick.wong@oracle.com>,
Theodore Ts'o <tytso@mit.edu>,
Alexander Viro <viro@zeniv.linux.org.uk>,
Andreas Dilger <adilger.kernel@dilger.ca>,
Christoph Hellwig <hch@lst.de>,
Dan Williams <dan.j.williams@intel.com>,
Dave Chinner <david@fromorbit.com>,
David Airlie <airlied@linux.ie>, Ingo Molnar <mingo@redhat.com>,
Inki Dae <inki.dae@samsung.com>, Jan Kara <jack@suse.cz>,
Jonathan Corbet <corbet@lwn.net>,
Joonyoung Shim <jy0922.shim@samsung.com>,
Krzysztof Kozlowski <krzk@kernel.org>,
Kukjin Kim <kgene@kernel.org>,
Kyungmin Park <kyungmin.park@samsung.com>,
Matthew Wilcox <mawilcox@microsoft.com>,
Patrik Jakobsson <patrik.r.jakobsson@gmail.com>,
Rob Clark <robdclark@gmail.com>,
Seung-Woo Kim <sw0312.kim@samsung.com>,
Steven Rostedt <rostedt@goodmis.org>,
Tomi Valkeinen <tomi.valkeinen@ti.com>,
dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org,
linux-arm-kernel@lists.infradead.org,
linux-arm-msm@vger.kernel.org, linux-doc@vger.kernel.org,
linux-ext4@vger.kernel.org, linux-fsdevel@vger.kernel.org,
linux-mm@kvack.org, linux-nvdimm@lists.01.org,
linux-samsung-soc@vger.kernel.org, linux-xfs@vger.kernel.org
Subject: Re: [PATCH v4 4/5] dax: remove DAX code from page_cache_tree_insert()
Date: Mon, 24 Jul 2017 13:47:38 +0200 [thread overview]
Message-ID: <20170724114738.GL652@quack2.suse.cz> (raw)
In-Reply-To: <20170721223956.29485-5-ross.zwisler@linux.intel.com>
On Fri 21-07-17 16:39:54, Ross Zwisler wrote:
> Now that we no longer insert struct page pointers in DAX radix trees we can
> remove the special casing for DAX in page_cache_tree_insert(). This also
> allows us to make dax_wake_mapping_entry_waiter() local to fs/dax.c,
> removing it from dax.h.
>
> Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
> Suggested-by: Jan Kara <jack@suse.cz>
Looks good. You can add:
Reviewed-by: Jan Kara <jack@suse.cz>
Honza
> ---
> fs/dax.c | 2 +-
> include/linux/dax.h | 2 --
> mm/filemap.c | 13 ++-----------
> 3 files changed, 3 insertions(+), 14 deletions(-)
>
> diff --git a/fs/dax.c b/fs/dax.c
> index fb0e4c1..0e27d90 100644
> --- a/fs/dax.c
> +++ b/fs/dax.c
> @@ -127,7 +127,7 @@ static int wake_exceptional_entry_func(wait_queue_entry_t *wait, unsigned int mo
> * correct waitqueue where tasks might be waiting for that old 'entry' and
> * wake them.
> */
> -void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> +static void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> pgoff_t index, void *entry, bool wake_all)
> {
> struct exceptional_entry_key key;
> diff --git a/include/linux/dax.h b/include/linux/dax.h
> index 29cced8..afa99bb 100644
> --- a/include/linux/dax.h
> +++ b/include/linux/dax.h
> @@ -122,8 +122,6 @@ int dax_iomap_fault(struct vm_fault *vmf, enum page_entry_size pe_size,
> int dax_delete_mapping_entry(struct address_space *mapping, pgoff_t index);
> int dax_invalidate_mapping_entry_sync(struct address_space *mapping,
> pgoff_t index);
> -void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> - pgoff_t index, void *entry, bool wake_all);
>
> #ifdef CONFIG_FS_DAX
> int __dax_zero_page_range(struct block_device *bdev,
> diff --git a/mm/filemap.c b/mm/filemap.c
> index a497024..1bf1265 100644
> --- a/mm/filemap.c
> +++ b/mm/filemap.c
> @@ -130,17 +130,8 @@ static int page_cache_tree_insert(struct address_space *mapping,
> return -EEXIST;
>
> mapping->nrexceptional--;
> - if (!dax_mapping(mapping)) {
> - if (shadowp)
> - *shadowp = p;
> - } else {
> - /* DAX can replace empty locked entry with a hole */
> - WARN_ON_ONCE(p !=
> - dax_radix_locked_entry(0, RADIX_DAX_EMPTY));
> - /* Wakeup waiters for exceptional entry lock */
> - dax_wake_mapping_entry_waiter(mapping, page->index, p,
> - true);
> - }
> + if (shadowp)
> + *shadowp = p;
> }
> __radix_tree_replace(&mapping->page_tree, node, slot, page,
> workingset_update_node, mapping);
> --
> 2.9.4
>
--
Jan Kara <jack@suse.com>
SUSE Labs, CR
WARNING: multiple messages have this Message-ID (diff)
From: jack@suse.cz (Jan Kara)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 4/5] dax: remove DAX code from page_cache_tree_insert()
Date: Mon, 24 Jul 2017 13:47:38 +0200 [thread overview]
Message-ID: <20170724114738.GL652@quack2.suse.cz> (raw)
In-Reply-To: <20170721223956.29485-5-ross.zwisler@linux.intel.com>
On Fri 21-07-17 16:39:54, Ross Zwisler wrote:
> Now that we no longer insert struct page pointers in DAX radix trees we can
> remove the special casing for DAX in page_cache_tree_insert(). This also
> allows us to make dax_wake_mapping_entry_waiter() local to fs/dax.c,
> removing it from dax.h.
>
> Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
> Suggested-by: Jan Kara <jack@suse.cz>
Looks good. You can add:
Reviewed-by: Jan Kara <jack@suse.cz>
Honza
> ---
> fs/dax.c | 2 +-
> include/linux/dax.h | 2 --
> mm/filemap.c | 13 ++-----------
> 3 files changed, 3 insertions(+), 14 deletions(-)
>
> diff --git a/fs/dax.c b/fs/dax.c
> index fb0e4c1..0e27d90 100644
> --- a/fs/dax.c
> +++ b/fs/dax.c
> @@ -127,7 +127,7 @@ static int wake_exceptional_entry_func(wait_queue_entry_t *wait, unsigned int mo
> * correct waitqueue where tasks might be waiting for that old 'entry' and
> * wake them.
> */
> -void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> +static void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> pgoff_t index, void *entry, bool wake_all)
> {
> struct exceptional_entry_key key;
> diff --git a/include/linux/dax.h b/include/linux/dax.h
> index 29cced8..afa99bb 100644
> --- a/include/linux/dax.h
> +++ b/include/linux/dax.h
> @@ -122,8 +122,6 @@ int dax_iomap_fault(struct vm_fault *vmf, enum page_entry_size pe_size,
> int dax_delete_mapping_entry(struct address_space *mapping, pgoff_t index);
> int dax_invalidate_mapping_entry_sync(struct address_space *mapping,
> pgoff_t index);
> -void dax_wake_mapping_entry_waiter(struct address_space *mapping,
> - pgoff_t index, void *entry, bool wake_all);
>
> #ifdef CONFIG_FS_DAX
> int __dax_zero_page_range(struct block_device *bdev,
> diff --git a/mm/filemap.c b/mm/filemap.c
> index a497024..1bf1265 100644
> --- a/mm/filemap.c
> +++ b/mm/filemap.c
> @@ -130,17 +130,8 @@ static int page_cache_tree_insert(struct address_space *mapping,
> return -EEXIST;
>
> mapping->nrexceptional--;
> - if (!dax_mapping(mapping)) {
> - if (shadowp)
> - *shadowp = p;
> - } else {
> - /* DAX can replace empty locked entry with a hole */
> - WARN_ON_ONCE(p !=
> - dax_radix_locked_entry(0, RADIX_DAX_EMPTY));
> - /* Wakeup waiters for exceptional entry lock */
> - dax_wake_mapping_entry_waiter(mapping, page->index, p,
> - true);
> - }
> + if (shadowp)
> + *shadowp = p;
> }
> __radix_tree_replace(&mapping->page_tree, node, slot, page,
> workingset_update_node, mapping);
> --
> 2.9.4
>
--
Jan Kara <jack@suse.com>
SUSE Labs, CR
next prev parent reply other threads:[~2017-07-24 11:47 UTC|newest]
Thread overview: 82+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-21 22:39 [PATCH v4 0/5] DAX common 4k zero page Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
[not found] ` <20170721223956.29485-1-ross.zwisler-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2017-07-21 22:39 ` [PATCH v4 1/5] mm: add mkwrite param to vm_insert_mixed() Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-22 16:21 ` Dan Williams
2017-07-22 16:21 ` Dan Williams
2017-07-22 16:21 ` Dan Williams
2017-07-22 16:21 ` Dan Williams
2017-07-22 16:21 ` Dan Williams
2017-07-22 16:21 ` Dan Williams
2017-07-24 11:15 ` Jan Kara
2017-07-24 11:15 ` Jan Kara
2017-07-24 11:15 ` Jan Kara
2017-07-24 11:15 ` Jan Kara
2017-07-24 11:15 ` Jan Kara
2017-07-24 11:15 ` Jan Kara
[not found] ` <20170724111531.GG652-4I4JzKEfoa/jFM9bn6wA6Q@public.gmane.org>
2017-07-24 15:13 ` Ross Zwisler
2017-07-24 15:13 ` Ross Zwisler
2017-07-24 15:13 ` Ross Zwisler
2017-07-24 15:13 ` Ross Zwisler
2017-07-24 15:13 ` Ross Zwisler
2017-07-24 15:13 ` Ross Zwisler
2017-07-24 11:25 ` Jan Kara
2017-07-24 11:25 ` Jan Kara
2017-07-24 11:25 ` Jan Kara
2017-07-24 11:25 ` Jan Kara
2017-07-24 15:23 ` Ross Zwisler
2017-07-24 15:23 ` Ross Zwisler
2017-07-24 15:23 ` Ross Zwisler
2017-07-24 15:23 ` Ross Zwisler
2017-07-24 15:23 ` Ross Zwisler
2017-07-24 15:23 ` Ross Zwisler
[not found] ` <20170724152357.GB1639-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2017-07-24 15:59 ` Jan Kara
2017-07-24 15:59 ` Jan Kara
2017-07-24 15:59 ` Jan Kara
2017-07-24 15:59 ` Jan Kara
2017-07-24 15:59 ` Jan Kara
2017-07-21 22:39 ` [PATCH v4 2/5] dax: relocate some dax functions Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
[not found] ` <20170721223956.29485-3-ross.zwisler-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2017-07-24 11:35 ` Jan Kara
2017-07-24 11:35 ` Jan Kara
2017-07-24 11:35 ` Jan Kara
2017-07-24 11:35 ` Jan Kara
2017-07-21 22:39 ` [PATCH v4 3/5] dax: use common 4k zero page for dax mmap reads Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-24 11:46 ` Jan Kara
2017-07-24 11:46 ` Jan Kara
2017-07-24 11:46 ` Jan Kara
2017-07-24 11:46 ` Jan Kara
2017-07-24 11:46 ` Jan Kara
2017-07-21 22:39 ` [PATCH v4 4/5] dax: remove DAX code from page_cache_tree_insert() Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-24 11:47 ` Jan Kara [this message]
2017-07-24 11:47 ` Jan Kara
2017-07-24 11:47 ` Jan Kara
2017-07-24 11:47 ` Jan Kara
2017-07-24 11:47 ` Jan Kara
2017-07-21 22:39 ` [PATCH v4 5/5] dax: move all DAX radix tree defs to fs/dax.c Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-21 22:39 ` Ross Zwisler
2017-07-24 11:48 ` Jan Kara
2017-07-24 11:48 ` Jan Kara
2017-07-24 11:48 ` Jan Kara
2017-07-24 11:48 ` Jan Kara
2017-07-24 11:48 ` Jan Kara
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=20170724114738.GL652@quack2.suse.cz \
--to=jack@suse.cz \
--cc=adilger.kernel@dilger.ca \
--cc=airlied@linux.ie \
--cc=akpm@linux-foundation.org \
--cc=corbet@lwn.net \
--cc=dan.j.williams@intel.com \
--cc=darrick.wong@oracle.com \
--cc=david@fromorbit.com \
--cc=hch@lst.de \
--cc=inki.dae@samsung.com \
--cc=jy0922.shim@samsung.com \
--cc=kgene@kernel.org \
--cc=krzk@kernel.org \
--cc=kyungmin.park@samsung.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mawilcox@microsoft.com \
--cc=mingo@redhat.com \
--cc=patrik.r.jakobsson@gmail.com \
--cc=robdclark@gmail.com \
--cc=ross.zwisler@linux.intel.com \
--cc=rostedt@goodmis.org \
--cc=sw0312.kim@samsung.com \
--cc=tytso@mit.edu \
--cc=viro@zeniv.linux.org.uk \
/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.