Re: [patch] reiser4: port for Linux-4.1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2015-06-30 at 09:30 +0200, Edward Shishkin wrote:
> 
> On 06/30/2015 09:13 AM, Ivan Shapovalov wrote:
> > On 2015-06-30 at 01:54 +0800, Edward Shishkin wrote:
> > > Oh, bad
> > > generic_write_checks() doesn't change offset now,
> > > please, ignore this patch..
> > Hi,
> 
> Hello.
> 
> > 
> > it does change it, but in struct kiocb instance, but we keep using
> > initial "off".
> > 
> > i'm trying to port file_operations' ->write() to ->write_iter() 
> > right
> 
> 
> Hmm. You'll need to modify ->write() of both file plugins -
> it's not simple, esp. for cryptcompress, which performs writes by
> chunks (4, 8, ... 64K)

Yeah, I understand. However, it doesn't seem too complex. It's simply
iov_iter* instead of a char*+size_t. I just need to grok how does the
page cache work (wrt. "faulting in" pages, flushing caches, error
handling, etc).

I'm now trying to read the generic code together with btrfs'
implementation, compare bit-by-bit and implement the same in reiser4.

> 
> > now, FTR. The obvious fix (assign back ki_pos to off) is too ugly 
> > :)
> 
> may be just create a static inline function
> reiser4_write_check() ?
> {
>      ...
>      generic_write_check();
> *off = iocb.ki_pos;
> }

Sure, it will work, but right now, as everything in vfs moves towards
*_iter methods, I guess there could be some sense in moving to those as
well...

Yes, I understand that vfs is a fast-moving target, but why not?

Thanks,
-- 
Ivan Shapovalov / intelfx /

Attachment: signature.asc
Description: This is a digitally signed message part


[Index of Archives]     [Linux File System Development]     [Linux BTRFS]     [Linux NFS]     [Linux Filesystems]     [Ext4 Filesystem]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Resources]

  Powered by Linux