Thread (33 messages) 33 messages, 5 authors, 2016-05-08

Re: [PATCH v4 5/7] fs: prioritize and separate direct_io from dax_io

From: "Verma, Vishal L" <vishal.l.verma@intel.com>
Date: 2016-05-08 18:42:37
Also in: linux-block, linux-fsdevel, linux-mm, linux-xfs, lkml

On Sun, 2016-05-08 at 02:01 -0700, hch@infradead.org wrote:
On Thu, May 05, 2016 at 09:45:07PM +0000, Verma, Vishal L wrote:
quoted
I'm not sure I completely understand how this will work? Can you
explain
a bit? Would we have to export rw_bytes up to layers above the pmem
driver? Where does get_user_pages come in?
A DAX filesystem can directly use the nvdimm layer the same way btt
doe,s what's the problem?
The BTT does rw_bytes through an internal-to-libnvdimm mechanism, but
rw_bytes isn't exported to the filesystem, currently.. To do this we'd
have to either add an rw_bytes to block device operations...or
something.

Another thing is rw_bytes currently doesn't do error clearing either.
We store badblocks at sector granularity, and like Dan said earlier,
that hides the clear_error alignment requirements and upper layers
don't have to be aware of it. To make rw_bytes clear sub-sector errors,
we'd have to change the granularity of bad-blocks, and make upper
layers aware of the clearing alignment requirements.

Using a block-write semantic for clearing hides all this away.
Re get_user_pages my idea was to simply use that to lock down the
user
pages so that we can call rw_bytes on it.  How else would you do
it?  Do
a kmalloc, copy_from_user and then another memcpy?��칻
�&ޱ��jg���
�+a�{.n�+����{��h����ܭ�f���h��/i�(�h�j+z)ߢ�ˊ{�0�
zm����	b��f����:'�隊V����j)m��'�K�rJ+�隊Y/i�(��
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help