�����г��滮����������

2017-08-10 Thread ����
___ Linux-nvdimm mailing list Linux-nvdimm@lists.01.org https://lists.01.org/mailman/listinfo/linux-nvdimm

Re: [PATCH 6/6] arm64: uaccess: Implement *_flushcache variants

2017-08-10 Thread Arnd Bergmann
On Tue, Jul 25, 2017 at 12:55 PM, Robin Murphy wrote: > Implement the set of copy functions with guarantees of a clean cache > upon completion necessary to support the pmem driver. > > Signed-off-by: Robin Murphy > --- > arch/arm64/Kconfig | 1 + > arch/arm64/include/asm/string

Re: [PATCH 6/6] arm64: uaccess: Implement *_flushcache variants

2017-08-10 Thread Catalin Marinas
On Thu, Aug 10, 2017 at 12:58:45PM +0200, Arnd Bergmann wrote: > On Tue, Jul 25, 2017 at 12:55 PM, Robin Murphy wrote: > > Implement the set of copy functions with guarantees of a clean cache > > upon completion necessary to support the pmem driver. > > > > Signed-off-by: Robin Murphy > > --- > >

Re: [PATCH v4 2/8] dmaengine: change transaction type DMA_SG to DMA_SG_SG

2017-08-10 Thread Dave Jiang
On 08/09/2017 07:20 PM, Dan Williams wrote: > On Wed, Aug 9, 2017 at 7:15 PM, Dan Williams wrote: >> On Mon, Aug 7, 2017 at 9:39 AM, Dave Jiang wrote: >>> In preparation of adding an API to perform SG to/from buffer for dmaengine, >>> we will change DMA_SG to DMA_SG_SG in order to explicitly ma

Re: [PATCH v4 2/8] dmaengine: change transaction type DMA_SG to DMA_SG_SG

2017-08-10 Thread Dan Williams
On Thu, Aug 10, 2017 at 9:22 AM, Dave Jiang wrote: > > > On 08/09/2017 07:20 PM, Dan Williams wrote: >> On Wed, Aug 9, 2017 at 7:15 PM, Dan Williams >> wrote: >>> On Mon, Aug 7, 2017 at 9:39 AM, Dave Jiang wrote: In preparation of adding an API to perform SG to/from buffer for dmaengine, >

Re: [PATCH v4 2/8] dmaengine: change transaction type DMA_SG to DMA_SG_SG

2017-08-10 Thread Dave Jiang
On 08/10/2017 12:05 PM, Dan Williams wrote: > On Thu, Aug 10, 2017 at 9:22 AM, Dave Jiang wrote: >> >> >> On 08/09/2017 07:20 PM, Dan Williams wrote: >>> On Wed, Aug 9, 2017 at 7:15 PM, Dan Williams >>> wrote: On Mon, Aug 7, 2017 at 9:39 AM, Dave Jiang wrote: > In preparation of addi

Re: [PATCH v4 2/8] dmaengine: change transaction type DMA_SG to DMA_SG_SG

2017-08-10 Thread Dan Williams
On Thu, Aug 10, 2017 at 12:44 PM, Dave Jiang wrote: > > > On 08/10/2017 12:05 PM, Dan Williams wrote: >> On Thu, Aug 10, 2017 at 9:22 AM, Dave Jiang wrote: >>> >>> >>> On 08/09/2017 07:20 PM, Dan Williams wrote: On Wed, Aug 9, 2017 at 7:15 PM, Dan Williams wrote: > On Mon, Aug 7,

[PATCH] ndctl: New structure definitions.

2017-08-10 Thread Jerry Hoemann
Add structure definitions newly published/modified in v0.85: https://github.com/HewlettPackard/hpe-nvm/blob/master/Documentation/NFIT_DSM_DDR4_NVDIMM-N_v85.pdf Signed-off-by: Jerry Hoemann --- ndctl/lib/ndctl-hpe1.h | 50 +- 1 file changed, 49 in

Re: [PATCH] ndctl: New structure definitions.

2017-08-10 Thread Dan Williams
On Thu, Aug 10, 2017 at 5:00 PM, Jerry Hoemann wrote: > Add structure definitions newly published/modified in v0.85: > > https://github.com/HewlettPackard/hpe-nvm/blob/master/Documentation/NFIT_DSM_DDR4_NVDIMM-N_v85.pdf Are there going to be follow-on patches that make use of these definitions? I

Re: [PATCH] ndctl: New structure definitions.

2017-08-10 Thread Jerry Hoemann
On Thu, Aug 10, 2017 at 05:47:10PM -0700, Dan Williams wrote: > On Thu, Aug 10, 2017 at 5:00 PM, Jerry Hoemann wrote: > > Add structure definitions newly published/modified in v0.85: > > > > https://github.com/HewlettPackard/hpe-nvm/blob/master/Documentation/NFIT_DSM_DDR4_NVDIMM-N_v85.pdf > > Are

Re: [PATCH] ndctl: New structure definitions.

2017-08-10 Thread Dan Williams
On Thu, Aug 10, 2017 at 7:12 PM, Jerry Hoemann wrote: > On Thu, Aug 10, 2017 at 05:47:10PM -0700, Dan Williams wrote: >> On Thu, Aug 10, 2017 at 5:00 PM, Jerry Hoemann wrote: >> > Add structure definitions newly published/modified in v0.85: >> > >> > https://github.com/HewlettPackard/hpe-nvm/blob

Re: [PATCH] ndctl: New structure definitions.

2017-08-10 Thread Jerry Hoemann
On Thu, Aug 10, 2017 at 07:27:58PM -0700, Dan Williams wrote: > On Thu, Aug 10, 2017 at 7:12 PM, Jerry Hoemann wrote: > > On Thu, Aug 10, 2017 at 05:47:10PM -0700, Dan Williams wrote: > >> On Thu, Aug 10, 2017 at 5:00 PM, Jerry Hoemann > >> wrote: > >> > Add structure definitions newly published

Re: [PATCH] ndctl: New structure definitions.

2017-08-10 Thread Dan Williams
On Thu, Aug 10, 2017 at 8:41 PM, Jerry Hoemann wrote: > On Thu, Aug 10, 2017 at 07:27:58PM -0700, Dan Williams wrote: >> On Thu, Aug 10, 2017 at 7:12 PM, Jerry Hoemann wrote: >> > On Thu, Aug 10, 2017 at 05:47:10PM -0700, Dan Williams wrote: >> >> On Thu, Aug 10, 2017 at 5:00 PM, Jerry Hoemann

[PATCH v2 0/7] Replace rw_page with on-stack bio

2017-08-10 Thread Minchan Kim
Recently, there was a dicussion about removing rw_page due to maintainance burden[1] but the problem was zram because zram has a clear win for the benchmark at that time. The reason why only zram have a win is due to bio allocation wait time from mempool under extreme memory pressure. Christoph He

[PATCH v2 7/7] fs: remove rw_page

2017-08-10 Thread Minchan Kim
Currently, there is no user of rw_page so remove it. Signed-off-by: Minchan Kim --- fs/block_dev.c | 76 -- fs/mpage.c | 15 -- include/linux/blkdev.h | 4 --- mm/page_io.c | 17 --- 4 files changed, 1

[PATCH v2 1/7] zram: set BDI_CAP_STABLE_WRITES once

2017-08-10 Thread Minchan Kim
[1] fixed weird thing(i.e., reset BDI_CAP_STABLE_WRITES flag unconditionally whenever revalidat_disk is called) so zram doesn't need to reset the flag any more whenever revalidating the bdev. Instead, set the flag just once when the zram device is created. It shouldn't change any behavior. [1] 19

[PATCH v2 2/7] bdi: introduce BDI_CAP_SYNCHRONOUS_IO

2017-08-10 Thread Minchan Kim
By discussion[1], we will replace rw_page devices with on-stack-bio. For such super-fast devices to be detected, this patch introduces BDI_CAP_SYNC which means synchronous IO would be more efficient for asnychronous IO and uses the flags to brd, zram, btt and pmem. [1] lkml.kernel.org/r/<201707281

[PATCH v2 4/7] mm:swap: remove end_swap_bio_write argument

2017-08-10 Thread Minchan Kim
Every caller of __swap_writepage uses end_swap_bio_write as end_write_func argument so the argument is pointless. Remove it. Signed-off-by: Minchan Kim --- include/linux/swap.h | 3 +-- mm/page_io.c | 7 +++ mm/zswap.c | 2 +- 3 files changed, 5 insertions(+), 7 deletions(-

[PATCH v2 3/7] fs: use on-stack-bio if backing device has BDI_CAP_SYNCHRONOUS capability

2017-08-10 Thread Minchan Kim
There is no need to use dynamic bio allocation for BDI_CAP_SYNCHRONOUS devices. They can with on-stack bio without concern about waiting bio allocation from mempool under heavy memory pressure. Cc: Matthew Wilcox Signed-off-by: Minchan Kim --- Hi Mattew, I didn't use sbvec[nr_pages] as you sug

[PATCH v2 6/7] zram: remove zram_rw_page

2017-08-10 Thread Minchan Kim
With on-stack-bio, rw_page interface doesn't provide a clear performance benefit for zram and surely has a maintenance burden, so remove the last user to remove rw_page completely. Reviewed-by: Sergey Senozhatsky Signed-off-by: Minchan Kim --- drivers/block/zram/zram_drv.c | 52

[PATCH v2 5/7] mm:swap: use on-stack-bio for BDI_CAP_SYNCHRONOUS device

2017-08-10 Thread Minchan Kim
There is no need to use dynamic bio allocation for BDI_CAP_SYNCHRONOUS devices. They can live with on-stack-bio without concern about waiting bio allocation from mempool under heavy memory pressure. It would be much better for swap devices because the bio mempool for swap IO have been used with fs

[PATCH v3 1/6] fs, xfs: introduce S_IOMAP_IMMUTABLE

2017-08-10 Thread Dan Williams
An inode with this flag set indicates that the file's block map cannot be changed from the currently allocated set. The implementation of toggling the flag and sealing the state of the extent map is saved for a later patch. The functionality provided by S_IOMAP_IMMUTABLE, once toggle support is ad

[PATCH v3 4/6] xfs: introduce XFS_DIFLAG2_IOMAP_IMMUTABLE

2017-08-10 Thread Dan Williams
Add an on-disk inode flag to record the state of the S_IOMAP_IMMUTABLE in-memory vfs inode flags. This allows the protections against reflink and hole punch to be automatically restored on a sub-sequent boot when the in-memory inode is established. The FS_XFLAG_IOMAP_IMMUTABLE is introduced to all

[PATCH v3 2/6] fs, xfs: introduce FALLOC_FL_SEAL_BLOCK_MAP

2017-08-10 Thread Dan Williams
>From falloc.h: FALLOC_FL_SEAL_BLOCK_MAP is used to seal (make immutable) all of the file logical-to-physical extent offset mappings in the file. The purpose is to allow an application to assume that there are no holes or shared extents in the file and that the metadata needed to f

[PATCH v3 5/6] xfs: toggle XFS_DIFLAG2_IOMAP_IMMUTABLE in response to fallocate

2017-08-10 Thread Dan Williams
After validating the state of the file as not having holes, shared extents, or active mappings try to commit the XFS_DIFLAG2_IOMAP_IMMUTABLE flag to the on-disk inode metadata. If that succeeds then allow the S_IOMAP_IMMUTABLE to be set on the vfs inode. Cc: Jan Kara Cc: Jeff Moyer Cc: Christoph

[PATCH v3 3/6] fs, xfs: introduce FALLOC_FL_UNSEAL_BLOCK_MAP

2017-08-10 Thread Dan Williams
Provide an explicit fallocate operation type for clearing the S_IOMAP_IMMUTABLE flag. Like the enable case it requires CAP_IMMUTABLE and it can only be performed while no process has the file mapped. Cc: Jan Kara Cc: Jeff Moyer Cc: Christoph Hellwig Cc: Ross Zwisler Cc: Alexander Viro Cc: "Da

[PATCH v3 6/6] mm, xfs: protect swapfile contents with immutable + unwritten extents

2017-08-10 Thread Dan Williams
On Jun 22, 2017, Darrick wrote: > On Jun 22, 2017, Dave wrote: >> Hmmm, I disagree on the unwritten state here. We want swap files to >> be able to use unwritten extents - it means we can preallocate the >> swap file and hand it straight to swapon without having to zero it

[PATCH v3 0/6] fs, xfs: block map immutable files

2017-08-10 Thread Dan Williams
Changes since v2 [1]: * Rather than have an IS_IOMAP_IMMUTABLE() check in xfs_alloc_file_space(), place one centrally in xfs_bmapi_write() to catch all attempts to write the block allocation map. (Dave) * Make sealing an already sealed file, or unsealing an already unsealed file return succe