{"push_id":1131560855,"size":29,"distinct_size":29,"ref":"refs/heads/master","head":"478a1469a7d27fe6b2f85fc801ecdeb8afc836e6","before":"a10c38a4f385f5d7c173a263ff6bb2d36021b3bb","commits":[{"sha":"e4b2749158631e6d74bf14d2ef3804d780e2f770","author":{"name":"NeilBrown","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"DAX: move RADIX_DAX_ definitions to dax.c\n\nThese don't belong in radix-tree.c any more than PAGECACHE_TAG_* do.\nLet's try to maintain the idea that radix-tree simply implements an\nabstract data type.\n\nAcked-by: Ross Zwisler <ross.zwisler@linux.intel.com>\nReviewed-by: Matthew Wilcox <willy@linux.intel.com>\nSigned-off-by: NeilBrown <neilb@suse.com>\nSigned-off-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/e4b2749158631e6d74bf14d2ef3804d780e2f770"},{"sha":"02fbd139759feb1f331cebd858523b5d774082e6","author":{"name":"Jan Kara","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dax: Remove complete_unwritten argument\n\nFault handlers currently take complete_unwritten argument to convert\nunwritten extents after PTEs are updated. However no filesystem uses\nthis anymore as the code is racy. Remove the unused argument.\n\nReviewed-by: Ross Zwisler <ross.zwisler@linux.intel.com>\nSigned-off-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/02fbd139759feb1f331cebd858523b5d774082e6"},{"sha":"9b6cd5f76d60b563d75e55e432e03ed134761432","author":{"name":"Jan Kara","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"ext2: Fix block zeroing in ext2_get_blocks() for DAX\n\nWhen zeroing allocated blocks for DAX, we accidentally zeroed only the\nfirst allocated block instead of all of them. So far this problem is\nhidden by the fact that page faults always need only a single block and\nDAX write code zeroes blocks again. But the zeroing in DAX code is racy\nand needs to be removed so fix the zeroing in ext2 to zero all allocated\nblocks.\n\nReported-by: Ross Zwisler <ross.zwisler@linux.intel.com>\nSigned-off-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/9b6cd5f76d60b563d75e55e432e03ed134761432"},{"sha":"86b0624e42d03a424e9571b8591d191c436f9af1","author":{"name":"Jan Kara","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"ext2: Avoid DAX zeroing to corrupt data\n\nCurrently ext2 zeroes any data blocks allocated for DAX inode however it\nstill returns them as BH_New. Thus DAX code zeroes them again in\ndax_insert_mapping() which can possibly overwrite the data that has been\nalready stored to those blocks by a racing dax_io(). Avoid marking\npre-zeroed buffers as new.\n\nReviewed-by: Ross Zwisler <ross.zwisler@linux.intel.com>\nSigned-off-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/86b0624e42d03a424e9571b8591d191c436f9af1"},{"sha":"2b10945c532c165a824f541df76a15ed0be04d78","author":{"name":"Jan Kara","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dax: Remove dead zeroing code from fault handlers\n\nNow that all filesystems zero out blocks allocated for a fault handler,\nwe can just remove the zeroing from the handler itself. Also add checks\nthat no filesystem returns to us unwritten or new buffer.\n\nReviewed-by: Ross Zwisler <ross.zwisler@linux.intel.com>\nSigned-off-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/2b10945c532c165a824f541df76a15ed0be04d78"},{"sha":"069c77bc9eaee70fa9ecbd942372b1693b8cdeb0","author":{"name":"Jan Kara","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dax: Remove zeroing from dax_io()\n\nAll the filesystems are now zeroing blocks themselves for DAX IO to avoid\nraces between dax_io() and dax_fault(). Remove the zeroing code from\ndax_io() and add warning to catch the case when somebody unexpectedly\nreturns new or unwritten buffer.\n\nReviewed-by: Ross Zwisler <ross.zwisler@linux.intel.com>\nSigned-off-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/069c77bc9eaee70fa9ecbd942372b1693b8cdeb0"},{"sha":"c3d98e39d5b37320b15f227686575d58f676e6ef","author":{"name":"Jan Kara","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dax: Remove pointless writeback from dax_do_io()\n\ndax_do_io() is calling filemap_write_and_wait() if DIO_LOCKING flags is\nset. Presumably this was copied over from direct IO code. However DAX\ninodes have no pagecache pages to write so the call is pointless. Remove\nit.\n\nReviewed-by: Ross Zwisler <ross.zwisler@linux.intel.com>\nSigned-off-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/c3d98e39d5b37320b15f227686575d58f676e6ef"},{"sha":"7795bec89ebf927ea3ad9ed5f396c227e5c73271","author":{"name":"Jan Kara","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dax: Remove redundant inode size checks\n\nCallers of dax fault handlers must make sure these calls cannot race\nwith truncate. Thus it is enough to check inode size when entering the\nfunction and we don't have to recheck it again later in the handler.\nNote that inode size itself can be decreased while the fault handler\nruns but filesystem locking prevents against any radix tree or block\nmapping information changes resulting from the truncate and that is what\nwe really care about.\n\nReviewed-by: Ross Zwisler <ross.zwisler@linux.intel.com>\nSigned-off-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/7795bec89ebf927ea3ad9ed5f396c227e5c73271"},{"sha":"2af3a8159cd204fc8437ed2f75863f0fb930f0d0","author":{"name":"Toshi Kani","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"block: Add vfs_msg() interface\n\nIn preparation of moving DAX capability checks to the block layer\nfrom filesystem code, add a VFS message interface that aligns with\nfilesystem's message format.\n\nFor instance, a vfs_msg() message followed by XFS messages in case\nof a dax mount error may look like:\n\n  VFS (pmem0p1): error: unaligned partition for dax\n  XFS (pmem0p1): DAX unsupported by block device. Turning off DAX.\n  XFS (pmem0p1): Mounting V5 Filesystem\n   :\n\nvfs_msg() is largely based on ext4_msg().\n\nSigned-off-by: Toshi Kani <toshi.kani@hpe.com>\nReviewed-by: Christoph Hellwig <hch@lst.de>\nCc: Alexander Viro <viro@zeniv.linux.org.uk>\nCc: Jens Axboe <axboe@fb.com>\nCc: \"Theodore Ts'o\" <tytso@mit.edu>\nCc: Andreas Dilger <adilger.kernel@dilger.ca>\nCc: Jan Kara <jack@suse.cz>\nCc: Dave Chinner <david@fromorbit.com>\nCc: Dan Williams <dan.j.williams@intel.com>\nCc: Ross Zwisler <ross.zwisler@linux.intel.com>\nCc: Christoph Hellwig <hch@infradead.org>\nCc: Boaz Harrosh <boaz@plexistor.com>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/2af3a8159cd204fc8437ed2f75863f0fb930f0d0"},{"sha":"2d96afc8f70ef86c66a0b5d80c24a27d6dd13df3","author":{"name":"Toshi Kani","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"block: Add bdev_dax_supported() for dax mount checks\n\nDAX imposes additional requirements to a device.  Add\nbdev_dax_supported() which performs all the precondition checks\nnecessary for filesystem to mount the device with dax option.\n\nAlso add a new check to verify if a partition is aligned by 4KB.\nWhen a partition is unaligned, any dax read/write access fails,\nexcept for metadata update.\n\nSigned-off-by: Toshi Kani <toshi.kani@hpe.com>\nReviewed-by: Christoph Hellwig <hch@lst.de>\nCc: Alexander Viro <viro@zeniv.linux.org.uk>\nCc: Jens Axboe <axboe@fb.com>\nCc: \"Theodore Ts'o\" <tytso@mit.edu>\nCc: Andreas Dilger <adilger.kernel@dilger.ca>\nCc: Jan Kara <jack@suse.cz>\nCc: Dave Chinner <david@fromorbit.com>\nCc: Dan Williams <dan.j.williams@intel.com>\nCc: Ross Zwisler <ross.zwisler@linux.intel.com>\nCc: Christoph Hellwig <hch@infradead.org>\nCc: Boaz Harrosh <boaz@plexistor.com>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/2d96afc8f70ef86c66a0b5d80c24a27d6dd13df3"},{"sha":"87eefeb4e80b1526be83e670a08d059a003b7d0e","author":{"name":"Toshi Kani","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"ext4: Add alignment check for DAX mount\n\nWhen a partition is not aligned by 4KB, mount -o dax succeeds,\nbut any read/write access to the filesystem fails, except for\nmetadata update.\n\nCall bdev_dax_supported() to perform proper precondition checks\nwhich includes this partition alignment check.\n\nReported-by: Micah Parrish <micah.parrish@hpe.com>\nSigned-off-by: Toshi Kani <toshi.kani@hpe.com>\nReviewed-by: Jan Kara <jack@suse.cz>\nCc: \"Theodore Ts'o\" <tytso@mit.edu>\nCc: Andreas Dilger <adilger.kernel@dilger.ca>\nCc: Jan Kara <jack@suse.cz>\nCc: Dan Williams <dan.j.williams@intel.com>\nCc: Ross Zwisler <ross.zwisler@linux.intel.com>\nCc: Christoph Hellwig <hch@infradead.org>\nCc: Boaz Harrosh <boaz@plexistor.com>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/87eefeb4e80b1526be83e670a08d059a003b7d0e"},{"sha":"284854be2b85e967d17c098a1d4c176b5cd37eb3","author":{"name":"Toshi Kani","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"ext2: Add alignment check for DAX mount\n\nWhen a partition is not aligned by 4KB, mount -o dax succeeds,\nbut any read/write access to the filesystem fails, except for\nmetadata update.\n\nCall bdev_dax_supported() to perform proper precondition checks\nwhich includes this partition alignment check.\n\nSigned-off-by: Toshi Kani <toshi.kani@hpe.com>\nReviewed-by: Jan Kara <jack@suse.cz>\nCc: Jan Kara <jack@suse.cz>\nCc: Dan Williams <dan.j.williams@intel.com>\nCc: Ross Zwisler <ross.zwisler@linux.intel.com>\nCc: Christoph Hellwig <hch@infradead.org>\nCc: Boaz Harrosh <boaz@plexistor.com>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/284854be2b85e967d17c098a1d4c176b5cd37eb3"},{"sha":"1e937cddd1ff4b823fc9d148ebabd443f105211e","author":{"name":"Toshi Kani","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"xfs: Add alignment check for DAX mount\n\nWhen a partition is not aligned by 4KB, mount -o dax succeeds,\nbut any read/write access to the filesystem fails, except for\nmetadata update.\n\nCall bdev_dax_supported() to perform proper precondition checks\nwhich includes this partition alignment check.\n\nSigned-off-by: Toshi Kani <toshi.kani@hpe.com>\nReviewed-by: Christoph Hellwig <hch@lst.de>\nCc: Dave Chinner <david@fromorbit.com>\nCc: Dan Williams <dan.j.williams@intel.com>\nCc: Ross Zwisler <ross.zwisler@linux.intel.com>\nCc: Christoph Hellwig <hch@infradead.org>\nCc: Boaz Harrosh <boaz@plexistor.com>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/1e937cddd1ff4b823fc9d148ebabd443f105211e"},{"sha":"a8078b1fc616da6112eb95f0063cd34531d4ccf0","author":{"name":"Toshi Kani","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"block: Update blkdev_dax_capable() for consistency\n\nblkdev_dax_capable() is similar to bdev_dax_supported(), but needs\nto remain as a separate interface for checking dax capability of\na raw block device.\n\nRename and relocate blkdev_dax_capable() to keep them maintained\nconsistently, and call bdev_direct_access() for the dax capability\ncheck.\n\nThere is no change in the behavior.\n\nLink: https://lkml.org/lkml/2016/5/9/950\nSigned-off-by: Toshi Kani <toshi.kani@hpe.com>\nReviewed-by: Jan Kara <jack@suse.cz>\nCc: Alexander Viro <viro@zeniv.linux.org.uk>\nCc: Jens Axboe <axboe@fb.com>\nCc: Andreas Dilger <adilger.kernel@dilger.ca>\nCc: Jan Kara <jack@suse.cz>\nCc: Dave Chinner <david@fromorbit.com>\nCc: Dan Williams <dan.j.williams@intel.com>\nCc: Ross Zwisler <ross.zwisler@linux.intel.com>\nCc: Christoph Hellwig <hch@infradead.org>\nCc: Boaz Harrosh <boaz@plexistor.com>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/a8078b1fc616da6112eb95f0063cd34531d4ccf0"},{"sha":"8b3db9798c689ba2dc509f6ca1a8c7e1c1a3e62a","author":{"name":"Dan Williams","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dax: fallback from pmd to pte on error\n\nIn preparation for consulting a badblocks list in pmem_direct_access(),\nteach dax_pmd_fault() to fallback rather than fail immediately upon\nencountering an error.  The thought being that reducing the span of the\ndax request may avoid the error region.\n\nReviewed-by: Jeff Moyer <jmoyer@redhat.com>\nReviewed-by: Christoph Hellwig <hch@lst.de>\nReviewed-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Dan Williams <dan.j.williams@intel.com>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/8b3db9798c689ba2dc509f6ca1a8c7e1c1a3e62a"},{"sha":"0a70bd43053331d99881211e1d09f32de531432f","author":{"name":"Dan Williams","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dax: enable dax in the presence of known media errors (badblocks)\n\n1/ If a mapping overlaps a bad sector fail the request.\n\n2/ Do not opportunistically report more dax-capable capacity than is\n   requested when errors present.\n\nReviewed-by: Jeff Moyer <jmoyer@redhat.com>\nReviewed-by: Christoph Hellwig <hch@lst.de>\nSigned-off-by: Dan Williams <dan.j.williams@intel.com>\n[vishal: fix a conflict with system RAM collision patches]\n[vishal: add a 'size' parameter to ->direct_access]\n[vishal: fix a conflict with DAX alignment check patches]\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/0a70bd43053331d99881211e1d09f32de531432f"},{"sha":"3dc29161070ab14d065554c0ad58988ab77a7bfd","author":{"name":"Matthew Wilcox","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dax: use sb_issue_zerout instead of calling dax_clear_sectors\n\ndax_clear_sectors() cannot handle poisoned blocks.  These must be\nzeroed using the BIO interface instead.  Convert ext2 and XFS to use\nonly sb_issue_zerout().\n\nReviewed-by: Jeff Moyer <jmoyer@redhat.com>\nReviewed-by: Christoph Hellwig <hch@lst.de>\nReviewed-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>\n[vishal: Also remove the dax_clear_sectors function entirely]\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/3dc29161070ab14d065554c0ad58988ab77a7bfd"},{"sha":"679c8bd3b29428e736eabb7fc66a978f312f0c86","author":{"name":"Christoph Hellwig","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dax: export a low-level __dax_zero_page_range helper\n\nThis allows XFS to perform zeroing using the iomap infrastructure and\navoid buffer heads.\n\nReviewed-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Christoph Hellwig <hch@lst.de>\n[vishal: fix conflicts with dax-error-handling]\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/679c8bd3b29428e736eabb7fc66a978f312f0c86"},{"sha":"4b0228fa1d753f77fe0e6cf4c41398ec77dfbd2a","author":{"name":"Vishal Verma","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dax: for truncate/hole-punch, do zeroing through the driver if possible\n\nIn the truncate or hole-punch path in dax, we clear out sub-page ranges.\nIf these sub-page ranges are sector aligned and sized, we can do the\nzeroing through the driver instead so that error-clearing is handled\nautomatically.\n\nFor sub-sector ranges, we still have to rely on clear_pmem and have the\npossibility of tripping over errors.\n\nCc: Dan Williams <dan.j.williams@intel.com>\nCc: Ross Zwisler <ross.zwisler@linux.intel.com>\nCc: Jeff Moyer <jmoyer@redhat.com>\nCc: Christoph Hellwig <hch@infradead.org>\nCc: Dave Chinner <david@fromorbit.com>\nCc: Jan Kara <jack@suse.cz>\nReviewed-by: Christoph Hellwig <hch@lst.de>\nReviewed-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/4b0228fa1d753f77fe0e6cf4c41398ec77dfbd2a"},{"sha":"40543f62cbdce42633e3fe10923099feee272e1f","author":{"name":"Vishal Verma","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dax: fix a comment in dax_zero_page_range and dax_truncate_page\n\nThe distinction between PAGE_SIZE and PAGE_CACHE_SIZE was removed in\n\n09cbfea mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release}\nmacros\n\nThe comments for the above functions described a distinction between\nthose, that is now redundant, so remove those paragraphs\n\nCc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>\nReviewed-by: Christoph Hellwig <hch@lst.de>\nReviewed-by: Jan Kara <jack@suse.cz>\nSigned-off-by: Vishal Verma <vishal.l.verma@intel.com>","distinct":true,"url":"https://api.github.com/repos/kraj/linux/commits/40543f62cbdce42633e3fe10923099feee272e1f"}]}
{"actor":{"display_login":"kraj"}}