On Sat, Oct 22, 2016 at 5:39 PM, Amir Goldstein wrote:
> On Sat, Oct 22, 2016 at 10:24 AM, Amir Goldstein wrote:
>> On Fri, Oct 21, 2016 at 11:13 PM, Vivek Goyal wrote:
>>> ---
>>> fs/file.c| 41
On Sat, Oct 22, 2016 at 5:39 PM, Amir Goldstein wrote:
> On Sat, Oct 22, 2016 at 10:24 AM, Amir Goldstein wrote:
>> On Fri, Oct 21, 2016 at 11:13 PM, Vivek Goyal wrote:
>>> ---
>>> fs/file.c| 41 +
>>> fs/overlayfs/inode.c |1 +
>>> 2
On Sat, Oct 22, 2016 at 10:24 AM, Amir Goldstein wrote:
> On Fri, Oct 21, 2016 at 11:13 PM, Vivek Goyal wrote:
>> On Fri, Oct 21, 2016 at 11:53:41AM +0300, Amir Goldstein wrote:
>>> On Thu, Oct 20, 2016 at 11:54 PM, Vivek Goyal wrote:
On Sat, Oct 22, 2016 at 10:24 AM, Amir Goldstein wrote:
> On Fri, Oct 21, 2016 at 11:13 PM, Vivek Goyal wrote:
>> On Fri, Oct 21, 2016 at 11:53:41AM +0300, Amir Goldstein wrote:
>>> On Thu, Oct 20, 2016 at 11:54 PM, Vivek Goyal wrote:
>>> > On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal
On Fri, Oct 21, 2016 at 11:13 PM, Vivek Goyal wrote:
> On Fri, Oct 21, 2016 at 11:53:41AM +0300, Amir Goldstein wrote:
>> On Thu, Oct 20, 2016 at 11:54 PM, Vivek Goyal wrote:
>> > On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal wrote:
>> >
>> > [..]
>>
On Fri, Oct 21, 2016 at 11:13 PM, Vivek Goyal wrote:
> On Fri, Oct 21, 2016 at 11:53:41AM +0300, Amir Goldstein wrote:
>> On Thu, Oct 20, 2016 at 11:54 PM, Vivek Goyal wrote:
>> > On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal wrote:
>> >
>> > [..]
>> >> > +static ssize_t
On Fri, Oct 21, 2016 at 11:53:41AM +0300, Amir Goldstein wrote:
> On Thu, Oct 20, 2016 at 11:54 PM, Vivek Goyal wrote:
> > On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal wrote:
> >
> > [..]
> >> > +static ssize_t ovl_read_iter(struct kiocb *iocb, struct iov_iter *to)
>
On Fri, Oct 21, 2016 at 11:53:41AM +0300, Amir Goldstein wrote:
> On Thu, Oct 20, 2016 at 11:54 PM, Vivek Goyal wrote:
> > On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal wrote:
> >
> > [..]
> >> > +static ssize_t ovl_read_iter(struct kiocb *iocb, struct iov_iter *to)
> >> > +{
> >> > +
On Fri, Oct 21, 2016 at 11:12:11AM +0200, Miklos Szeredi wrote:
> On Thu, Oct 20, 2016 at 04:54:08PM -0400, Vivek Goyal wrote:
> > On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal wrote:
> >
> > [..]
> > > > +static ssize_t ovl_read_iter(struct kiocb *iocb, struct iov_iter *to)
> > > > +{
>
On Fri, Oct 21, 2016 at 11:12:11AM +0200, Miklos Szeredi wrote:
> On Thu, Oct 20, 2016 at 04:54:08PM -0400, Vivek Goyal wrote:
> > On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal wrote:
> >
> > [..]
> > > > +static ssize_t ovl_read_iter(struct kiocb *iocb, struct iov_iter *to)
> > > > +{
>
On Fri, Oct 21, 2016 at 12:30 PM, Miklos Szeredi wrote:
> On Fri, Oct 21, 2016 at 11:13 AM, Amir Goldstein wrote:
>
>> I think it would be a good idea in general to stabilize the overlay ino/dev
>> throughout copy-up, same as Miklos suggested to do for
On Fri, Oct 21, 2016 at 12:30 PM, Miklos Szeredi wrote:
> On Fri, Oct 21, 2016 at 11:13 AM, Amir Goldstein wrote:
>
>> I think it would be a good idea in general to stabilize the overlay ino/dev
>> throughout copy-up, same as Miklos suggested to do for directories, to
>> all files:
>> pure upper
On Fri, Oct 21, 2016 at 11:13 AM, Amir Goldstein wrote:
> I think it would be a good idea in general to stabilize the overlay ino/dev
> throughout copy-up, same as Miklos suggested to do for directories, to
> all files:
> pure upper uses upper ino + overlayfs dev
> non-pure
On Fri, Oct 21, 2016 at 11:13 AM, Amir Goldstein wrote:
> I think it would be a good idea in general to stabilize the overlay ino/dev
> throughout copy-up, same as Miklos suggested to do for directories, to
> all files:
> pure upper uses upper ino + overlayfs dev
> non-pure upper uses lower ino
On Thu, Oct 20, 2016 at 11:46 PM, Vivek Goyal wrote:
> On Wed, Oct 12, 2016 at 03:33:26PM +0200, Miklos Szeredi wrote:
>> This is a proof of concept patch to fix the following.
>>
>> /ovl is in overlay mount and /ovl/foo exists on the lower layer only.
>>
>> rofd =
On Thu, Oct 20, 2016 at 11:46 PM, Vivek Goyal wrote:
> On Wed, Oct 12, 2016 at 03:33:26PM +0200, Miklos Szeredi wrote:
>> This is a proof of concept patch to fix the following.
>>
>> /ovl is in overlay mount and /ovl/foo exists on the lower layer only.
>>
>> rofd = open("/ovl/foo", O_RDONLY);
>>
On Thu, Oct 20, 2016 at 04:54:08PM -0400, Vivek Goyal wrote:
> On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal wrote:
>
> [..]
> > > +static ssize_t ovl_read_iter(struct kiocb *iocb, struct iov_iter *to)
> > > +{
> > > + struct file *file = iocb->ki_filp;
> > > + bool isupper =
On Thu, Oct 20, 2016 at 04:54:08PM -0400, Vivek Goyal wrote:
> On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal wrote:
>
> [..]
> > > +static ssize_t ovl_read_iter(struct kiocb *iocb, struct iov_iter *to)
> > > +{
> > > + struct file *file = iocb->ki_filp;
> > > + bool isupper =
On Thu, Oct 20, 2016 at 11:54 PM, Vivek Goyal wrote:
> On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal wrote:
>
> [..]
>> > +static ssize_t ovl_read_iter(struct kiocb *iocb, struct iov_iter *to)
>> > +{
>> > + struct file *file = iocb->ki_filp;
>> > + bool isupper =
On Thu, Oct 20, 2016 at 11:54 PM, Vivek Goyal wrote:
> On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal wrote:
>
> [..]
>> > +static ssize_t ovl_read_iter(struct kiocb *iocb, struct iov_iter *to)
>> > +{
>> > + struct file *file = iocb->ki_filp;
>> > + bool isupper =
On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal wrote:
[..]
> > +static ssize_t ovl_read_iter(struct kiocb *iocb, struct iov_iter *to)
> > +{
> > + struct file *file = iocb->ki_filp;
> > + bool isupper = OVL_TYPE_UPPER(ovl_path_type(file->f_path.dentry));
> > + ssize_t ret = -EINVAL;
On Thu, Oct 20, 2016 at 04:46:30PM -0400, Vivek Goyal wrote:
[..]
> > +static ssize_t ovl_read_iter(struct kiocb *iocb, struct iov_iter *to)
> > +{
> > + struct file *file = iocb->ki_filp;
> > + bool isupper = OVL_TYPE_UPPER(ovl_path_type(file->f_path.dentry));
> > + ssize_t ret = -EINVAL;
On Wed, Oct 12, 2016 at 03:33:26PM +0200, Miklos Szeredi wrote:
> This is a proof of concept patch to fix the following.
>
> /ovl is in overlay mount and /ovl/foo exists on the lower layer only.
>
> rofd = open("/ovl/foo", O_RDONLY);
> rwfd = open("/ovl/foo", O_WRONLY); /* this causes copy up
On Wed, Oct 12, 2016 at 03:33:26PM +0200, Miklos Szeredi wrote:
> This is a proof of concept patch to fix the following.
>
> /ovl is in overlay mount and /ovl/foo exists on the lower layer only.
>
> rofd = open("/ovl/foo", O_RDONLY);
> rwfd = open("/ovl/foo", O_WRONLY); /* this causes copy up
On Wed, Oct 12, 2016 at 4:33 PM, Miklos Szeredi wrote:
> This is a proof of concept patch to fix the following.
>
> /ovl is in overlay mount and /ovl/foo exists on the lower layer only.
>
> rofd = open("/ovl/foo", O_RDONLY);
> rwfd = open("/ovl/foo", O_WRONLY); /* this causes
On Wed, Oct 12, 2016 at 4:33 PM, Miklos Szeredi wrote:
> This is a proof of concept patch to fix the following.
>
> /ovl is in overlay mount and /ovl/foo exists on the lower layer only.
>
> rofd = open("/ovl/foo", O_RDONLY);
> rwfd = open("/ovl/foo", O_WRONLY); /* this causes copy up */
>
This is a proof of concept patch to fix the following.
/ovl is in overlay mount and /ovl/foo exists on the lower layer only.
rofd = open("/ovl/foo", O_RDONLY);
rwfd = open("/ovl/foo", O_WRONLY); /* this causes copy up */
write(rwfd, "bar", 3);
read(rofd, buf, 3);
assert(memcmp(buf, "bar",
This is a proof of concept patch to fix the following.
/ovl is in overlay mount and /ovl/foo exists on the lower layer only.
rofd = open("/ovl/foo", O_RDONLY);
rwfd = open("/ovl/foo", O_WRONLY); /* this causes copy up */
write(rwfd, "bar", 3);
read(rofd, buf, 3);
assert(memcmp(buf, "bar",
28 matches
Mail list logo