Am Mi., 5. Juli 2023 um 23:51 Uhr schrieb Jeff Layton :
>
> On Wed, 2023-07-05 at 22:25 +0200, Andreas Gruenbacher wrote:
> > On Mon, Jun 12, 2023 at 12:36 PM Jeff Layton wrote:
> > > On Fri, 2023-06-09 at 18:44 +0200, Andreas Gruenbacher wrote:
> > > > Jeff,
> > > >
> > > > On Fri, Jun 9, 2023 at
Am Mi., 7. Juni 2023 um 00:48 Uhr schrieb Matthew Wilcox (Oracle)
:
> If any page in a folio is dirtied, dirty the entire folio. Removes a
> number of hidden calls to compound_head() and references to page->mapping
> and page->index.
>
> Signed-off-by: Matthew Wilcox (Oracle)
> ---
> fs/buffer.c
Am Mi., 7. Juni 2023 um 00:41 Uhr schrieb Matthew Wilcox (Oracle)
:
> Keep the interface as struct page, but work entirely on the folio
> internally. Removes several PAGE_SIZE assumptions and removes
> some references to page->index and page->mapping.
>
> Signed-off-by: Matthew Wilcox (Oracle)
>
Am Fr., 26. Mai 2023 um 01:20 Uhr schrieb Kent Overstreet
:
> On Fri, May 26, 2023 at 12:25:31AM +0200, Andreas Grünbacher wrote:
> > Am Di., 23. Mai 2023 um 18:28 Uhr schrieb Christoph Hellwig
> > :
> > > On Tue, May 23, 2023 at 03:34:31PM +0200, Jan Kara wrote:
> >
Am Do., 25. Mai 2023 um 10:56 Uhr schrieb Jan Kara :
> On Tue 23-05-23 12:49:06, Kent Overstreet wrote:
> > > > No, that's definitely handled (and you can see it in the code I linked),
> > > > and I wrote a torture test for fstests as well.
> > >
> > > I've checked the code and AFAICT it is all ind
Am Di., 23. Mai 2023 um 18:28 Uhr schrieb Christoph Hellwig
:
> On Tue, May 23, 2023 at 03:34:31PM +0200, Jan Kara wrote:
> > I've checked the code and AFAICT it is all indeed handled. BTW, I've now
> > remembered that GFS2 has dealt with the same deadlocks - b01b2d72da25
> > ("gfs2: Fix mmap + pa
Am Di., 23. Mai 2023 um 15:37 Uhr schrieb Jan Kara :
> On Wed 10-05-23 02:18:45, Kent Overstreet wrote:
> > On Wed, May 10, 2023 at 03:07:37AM +0200, Jan Kara wrote:
> > > On Tue 09-05-23 12:56:31, Kent Overstreet wrote:
> > > > From: Kent Overstreet
> > > >
> > > > This is used by bcachefs to fix
Am Do., 23. März 2023 um 22:54 Uhr schrieb Linus Torvalds
:
> On Thu, Mar 23, 2023 at 11:45 AM Andreas Gruenbacher
> wrote:
> >
> > From: Linus Torvalds
>
> Wat?
Hmm, that's weird, you ended up in the From: header by accident. Sorry for that.
> > git://git.kernel.org/pub/scm/linux/kernel/git
Am Mi., 18. Jan. 2023 um 20:04 Uhr schrieb Darrick J. Wong :
>
> On Tue, Jan 17, 2023 at 11:21:38PM -0800, Christoph Hellwig wrote:
> > On Sun, Jan 15, 2023 at 09:29:58AM -0800, Darrick J. Wong wrote:
> > > I don't have any objections to pulling everything except patches 8 and
> > > 10 for testing
Am Di., 10. Jan. 2023 um 09:52 Uhr schrieb Christoph Hellwig
:
> On Mon, Jan 09, 2023 at 01:46:42PM +0100, Andreas Gruenbacher wrote:
> > We can handle that by adding a new IOMAP_NOCREATE iterator flag and
> > checking for that in iomap_get_folio(). Your patch then turns into
> > the below.
>
> Ex
Am Mo., 9. Jan. 2023 um 23:58 Uhr schrieb Dave Chinner :
> On Mon, Jan 09, 2023 at 07:45:27PM +0100, Andreas Gruenbacher wrote:
> > On Sun, Jan 8, 2023 at 10:59 PM Dave Chinner wrote:
> > > On Sun, Jan 08, 2023 at 08:40:32PM +0100, Andreas Gruenbacher wrote:
> > > > Eliminate the ->iomap_valid() h
Am Mi., 4. Jan. 2023 um 19:00 Uhr schrieb Darrick J. Wong :
> On Sat, Dec 31, 2022 at 04:09:17PM +0100, Andreas Gruenbacher wrote:
> > Eliminate the ->iomap_valid() handler by switching to a ->get_folio()
> > handler and validating the mapping there.
> >
> > Signed-off-by: Andreas Gruenbacher
> >
Am Mi., 4. Jan. 2023 um 18:47 Uhr schrieb Darrick J. Wong :
>
> On Sat, Dec 31, 2022 at 04:09:13PM +0100, Andreas Gruenbacher wrote:
> > The ->page_done() handler in struct iomap_page_ops is now somewhat
> > misnamed in that it mainly deals with unlocking and putting a folio, so
> > rename it to ->
Am Fr., 23. Dez. 2022 um 16:06 Uhr schrieb Christoph Hellwig
:
> On Fri, Dec 16, 2022 at 04:06:20PM +0100, Andreas Gruenbacher wrote:
> > Add a folio_may_straddle_isize() helper as a replacement for
> > pagecache_isize_extended() when we have a locked folio.
>
> I find the naming very confusing. A
Am Fr., 23. Dez. 2022 um 16:22 Uhr schrieb Christoph Hellwig
:
> > +struct folio *iomap_folio_prepare(struct iomap_iter *iter, loff_t pos)
> > +{
> > + unsigned fgp = FGP_LOCK | FGP_WRITE | FGP_CREAT | FGP_STABLE |
> > FGP_NOFS;
> > +
> > + if (iter->flags & IOMAP_NOWAIT)
> > +
Am Fr., 23. Dez. 2022 um 16:12 Uhr schrieb Christoph Hellwig
:
> On Fri, Dec 16, 2022 at 04:06:21PM +0100, Andreas Gruenbacher wrote:
> > +static void iomap_folio_done(struct iomap_iter *iter, loff_t pos, size_t
> > ret,
> > + struct folio *folio)
> > +{
> > + const struct iomap_pa
Am So., 23. Okt. 2022 um 18:46 Uhr schrieb Hawkins Jiawei :
> According to commit "vfs: parse: deal with zero length string value",
> kernel will set the param->string to null pointer in vfs_parse_fs_string()
> if fs string has zero length.
>
> Yet the problem is that, gfs2_parse_param() will deref
Am Mi., 10. Aug. 2022 um 22:57 Uhr schrieb Matthew Wilcox :
> On Mon, Aug 01, 2022 at 11:31:50AM -0400, Johannes Weiner wrote:
> > XFS hasn't had a ->writepage call for a while. After LSF I internally
> > tested dropping btrfs' callback, and the results looked good: no OOM
> > kills with dirty/writ
Am Mo., 11. Juli 2022 um 06:16 Uhr schrieb Christoph Hellwig :
> ->writepage is only used for single page writeback from memory reclaim,
> and not called at all for cgroup writeback. Follow the lead of XFS
> and remove ->writepage and rely entirely on ->writepages.
>
> Signed-off-by: Christoph Hel
Am Do., 11. Nov. 2021 um 08:26 Uhr schrieb Christoph Hellwig :
> The iomap mapping sizes are read-only to iomap for a good reason. You
> can't just break that design.
Right. We can stop iomap_iter by returning 0 now though; see v2.
Thanks,
Andreas
Am Do., 28. Okt. 2021 um 23:21 Uhr schrieb Catalin Marinas
:
> One last try on this path before I switch to the other options.
>
> On Wed, Oct 27, 2021 at 02:14:48PM -0700, Linus Torvalds wrote:
> > On Wed, Oct 27, 2021 at 12:13 PM Catalin Marinas
> > wrote:
> > > As an alternative, you mentioned
Sorry for the HTML post: I'm travelling for the next two weeks and I'll
mostly be in read-only mode. Bob can help out during that time if
necessary, though.
Linus Torvalds schrieb am Fr., 3. Sep.
2021, 18:20:
> On Wed, Sep 1, 2021 at 12:53 PM Andreas Gruenbacher
> wrote:
> >
> > So there's a mi
Am Fr., 27. Aug. 2021 um 23:33 Uhr schrieb Darrick J. Wong :
> On Fri, Aug 27, 2021 at 10:15:11PM +0200, Andreas Gruenbacher wrote:
> > On Fri, Aug 27, 2021 at 8:30 PM Darrick J. Wong wrote:
> > > On Fri, Aug 27, 2021 at 06:49:23PM +0200, Andreas Gruenbacher wrote:
> > > > Add a done_before argume
Am Fr., 20. Aug. 2021 um 15:49 Uhr schrieb Steven Whitehouse
:
> We always used to manage to avoid holding fs locks when copying to/from
> userspace
> to avoid these complications.
I realize the intent, but that goal has never actually been achieved.
Direct I/O has *always* been calling get_user_
Jan Kara schrieb am Mo., 26. Juli 2021, 19:10:
> On Fri 23-07-21 22:58:40, Andreas Gruenbacher wrote:
> > Also disable page faults during direct I/O requests and implement the
> same kind
> > of retry logic as in the buffered I/O case.
> >
> > Direct I/O requests differ from buffered I/O requests
Jan Kara schrieb am Mo., 26. Juli 2021, 19:21:
> On Fri 23-07-21 22:58:38, Andreas Gruenbacher wrote:
> > In __iomap_dio_rw, when iomap_apply returns an -EFAULT error, complete
> the
> > request synchronously and reset the iterator to the start position. This
> > allows callers to deal with the
Am Sa., 24. Juli 2021 um 03:53 Uhr schrieb Al Viro :
> On Fri, Jul 23, 2021 at 10:58:34PM +0200, Andreas Gruenbacher wrote:
> > Introduce a new fault_in_iov_iter helper for manually faulting in an
> > iterator.
> > Other than fault_in_pages_writeable(), this function is non-destructive.
> >
> > We
Am Sa., 24. Juli 2021 um 01:41 Uhr schrieb Linus Torvalds
:
> On Fri, Jul 23, 2021 at 1:58 PM Andreas Gruenbacher
> wrote:
> >
> > Introduce a new fault_in_iov_iter helper for manually faulting in an
> > iterator.
> > Other than fault_in_pages_writeable(), this function is non-destructive.
>
> A
Am Fr., 2. Juli 2021 um 02:48 Uhr schrieb Linus Torvalds
:
> On Thu, Jul 1, 2021 at 5:30 PM Linus Torvalds
> wrote:
> > Of course, if you ask for more data than the file has, that's another
> > thing, but who really does that with direct-IO? And if they do, why
> > should we care about their sill
Am Di., 20. Apr. 2021 um 22:29 Uhr schrieb Gustavo A. R. Silva
:
> Friendly ping: who can take this, please?
Oops, that got lost. I've added it to for-next now.
Thanks,
Andreas
Hi,
Am Fr., 9. Apr. 2021 um 10:20 Uhr schrieb Wei Yongjun :
> memory allocated by kmem_cache_alloc() should be freed using
> kmem_cache_free(), not kfree().
thanks for the patch, that's true. This patch has turned out to have
other problems as well, so we've pulled it and Bob is currently
investi
Bob,
Am Di., 5. Jan. 2021 um 14:28 Uhr schrieb Bob Peterson :
> - Original Message -
> > From: Zhaoyang Huang
> >
> > As gfs2_quotad_cachep and gfs2_glock_cachep have registered
> > the shrinker, amending SLAB_RECLAIM_ACCOUNT when creating
> > them, which make the slab acount to be presic
Am Mi., 17. Juni 2020 um 02:33 Uhr schrieb Matthew Wilcox :
>
> On Wed, Jun 17, 2020 at 12:36:13AM +0200, Andreas Gruenbacher wrote:
> > Am Mi., 15. Apr. 2020 um 23:39 Uhr schrieb Matthew Wilcox
> > :
> > > From: "Matthew Wilcox (Oracle)"
> > >
> > > Implement the new readahead aop and convert al
Alex,
Am Di., 21. Jan. 2020 um 09:50 Uhr schrieb Alex Shi
:
> After commit 1579343a73e3 ("GFS2: Remove dirent_first() function"), this
> macro isn't used any more. so remove it.
>
> Signed-off-by: Alex Shi
> Cc: Bob Peterson
> Cc: Andreas Gruenbacher
> Cc: cluster-devel@redhat.com
> Cc: linux-k
Am Di., 10. Dez. 2019 um 22:25 Uhr schrieb Darrick J. Wong
:
> On Tue, Dec 10, 2019 at 09:39:31PM +0100, Andreas Grünbacher wrote:
> > Am Di., 10. Dez. 2019 um 21:33 Uhr schrieb Darrick J. Wong
> > :
> > > On Tue, Dec 10, 2019 at 11:29:16AM +0100, Andreas Gruenbacher
Am Di., 10. Dez. 2019 um 21:33 Uhr schrieb Darrick J. Wong
:
> On Tue, Dec 10, 2019 at 11:29:16AM +0100, Andreas Gruenbacher wrote:
> > These two functions are needed by filesystems for converting inline
> > ("stuffed") inodes into non-inline inodes.
> >
> > Signed-off-by: Andreas Gruenbacher
>
>
Am Mo., 25. Nov. 2019 um 10:16 Uhr schrieb Kirill A. Shutemov
:
> On Sat, Nov 23, 2019 at 12:53:24AM +0100, Andreas Gruenbacher wrote:
> > @@ -778,15 +804,51 @@ static ssize_t gfs2_file_direct_write(struct kiocb
> > *iocb, struct iov_iter *from)
> >
> > static ssize_t gfs2_file_read_iter(struct k
Hi,
Am Do., 31. Okt. 2019 um 12:43 Uhr schrieb Steven Whitehouse
:
> Andreas, Bob, have I missed anything here?
I've looked into this a bit, and it seems that there's a reasonable
way to get rid of the lock taking in ->readpage and ->readpages
without a lot of code duplication. My proposal for th
Am Di., 3. Sept. 2019 um 15:21 Uhr schrieb Markus Elfring
:
> From: Markus Elfring
> Date: Tue, 3 Sep 2019 15:10:05 +0200
>
> The brelse() function tests whether its argument is NULL
> and then returns immediately.
> Thus the test around the call is not needed.
>
> This issue was detected by using
Hi Darrick,
Am Do., 29. Aug. 2019 um 05:12 Uhr schrieb Darrick J. Wong
:
> Hm, so I made an xfstest out of the program you sent me, and indeed
> reverting that chunk makes the failure go away, but that got me
> wondering -- that iomap kludge was a workaround for the splice code
> telling iomap to
Am Mi., 28. Aug. 2019 um 16:23 Uhr schrieb Darrick J. Wong
:
> On Wed, Aug 21, 2019 at 10:23:49PM +0200, Andreas Grünbacher wrote:
> > Hi Darrick,
> >
> > Am So., 2. Dez. 2018 um 19:13 Uhr schrieb Darrick J. Wong
> > :
> > > From: Darrick J. Wong
> > >
Hi Darrick,
Am So., 2. Dez. 2018 um 19:13 Uhr schrieb Darrick J. Wong
:
> From: Darrick J. Wong
>
> In commit 4721a601099, we tried to fix a problem wherein directio reads
> into a splice pipe will bounce EFAULT/EAGAIN all the way out to
> userspace by simulating a zero-byte short read. This hap
Am So., 18. Aug. 2019 um 21:32 Uhr schrieb Arnd Bergmann :
> On Fri, Aug 16, 2019 at 7:32 PM Andreas Gruenbacher
> wrote:
> > On Wed, Aug 14, 2019 at 10:45 PM Arnd Bergmann wrote:
> > > + /* These are just misnamed, they actually get/put from/to user an
> > > int */
> > > + switch(c
Hi Yang Bin,
Am Do., 27. Juni 2019 um 05:08 Uhr schrieb Yang Bin :
> From: " Yang Bin "
>
> When clear rgrp,sub sd_rgrps after erased from rindex_tree
this patch isn't incorrect, but all it does it ensure that sd_rgrps
reaches zero before we destroy a struct gfs2_sbd. However, sd_rgrps is
only ev
Hi Linus,
please consider pulling the following changes for the GFS2 file
system, now without resolving the merge conflict Stephen Rothwell has
pointed out between commit
2b070cfe582b ("block: remove the i argument to bio_for_each_segment_all")
which is already merged, interacting with commit
Am Di., 30. Apr. 2019 um 17:48 Uhr schrieb Darrick J. Wong
:
> Ok, I'll take the first four patches through the iomap branch and cc you
> on the pull request.
Ok great, thanks.
Andreas
2018-06-06 12:40 GMT+02:00 Christoph Hellwig :
> From: Andreas Gruenbacher
>
> Add generic inline data handling by adding a pointer to the inline data
> region to struct iomap. When handling a buffered IOMAP_INLINE write,
> iomap_write_begin will copy the current inline data from the inline data
2018-06-06 13:38 GMT+02:00 Andreas Gruenbacher :
> On 6 June 2018 at 12:40, Christoph Hellwig wrote:
>> Hi all,
>>
>> this is a slight rework of the patches from Andreas to prepare for gfs2
>> using the iomap code. I'd like to start with an immutable branch for
>> iomap patches in either the XFS
2018-06-06 12:59 GMT+02:00 Christoph Hellwig :
> On Wed, Jun 06, 2018 at 12:40:28PM +0200, Christoph Hellwig wrote:
>> Bits of the buffer.c based write_end implementations that don't know
>> about buffer_heads and can be reused by other implementations.
>>
>> Signed-off-by: Christoph Hellwig
>
> T
2018-06-05 14:29 GMT+02:00 David Sterba :
> On Tue, Jun 05, 2018 at 02:17:38PM +0200, Andreas Grünbacher wrote:
>> 2018-06-05 14:07 GMT+02:00 David Sterba :
>> > On Mon, Jun 04, 2018 at 09:31:19PM +0200, Andreas Gruenbacher wrote:
>> >> --- a/fs/iomap.c
>>
2018-06-05 14:10 GMT+02:00 David Sterba :
> On Mon, Jun 04, 2018 at 09:31:16PM +0200, Andreas Gruenbacher wrote:
>> @@ -1062,8 +1063,9 @@ iomap_dio_rw(struct kiocb *iocb, struct iov_iter *iter,
>> if (ret < 0)
>> iomap_dio_set_error(dio, ret);
>>
+ /*
+* Make sure
2018-06-05 14:07 GMT+02:00 David Sterba :
> On Mon, Jun 04, 2018 at 09:31:19PM +0200, Andreas Gruenbacher wrote:
>> --- a/fs/iomap.c
>> +++ b/fs/iomap.c
>> @@ -181,16 +181,22 @@ iomap_write_begin(struct inode *inode, loff_t pos,
>> unsigned len, unsigned flags,
>>
>> static int
>> iomap_write_en
2018-06-04 21:31 GMT+02:00 Andreas Gruenbacher :
> Add a page_write_end hook called when done writing to a page, for
> filesystems that implement data journaling: in that case, pages are
> written to the journal before being written back to their proper on-disk
> locations.
> The new hook is bypas
2018-06-04 14:12 GMT+02:00 Christoph Hellwig :
> On Mon, Jun 04, 2018 at 02:02:10PM +0200, Andreas Grünbacher wrote:
>> For gfs2, passing a private pointer from iomap_begin to iomap_end (for
>> the buffer head holding the inode) would help as well, but it's not
>> criti
2018-06-04 14:52 GMT+02:00 Christoph Hellwig :
> On Mon, Jun 04, 2018 at 02:37:29PM +0200, Andreas Gruenbacher wrote:
>> We need access to the struct iomap_ops in iomap_write_end to call the
>> (optional) page_write_end hook, so instead of passing the operators to
>> iomap_write_end differently dep
2018-06-04 14:50 GMT+02:00 Christoph Hellwig :
> On Mon, Jun 04, 2018 at 02:37:24PM +0200, Andreas Gruenbacher wrote:
>> Add a page_write_end hook called when done writing to a page, for
>> filesystems that implement data journaling: in that case, pages are
>> written to the journal before being wr
2018-06-04 14:48 GMT+02:00 Christoph Hellwig :
> On Mon, Jun 04, 2018 at 02:37:22PM +0200, Andreas Gruenbacher wrote:
>> @@ -2106,7 +2105,7 @@ int __generic_write_end(struct inode *inode, loff_t
>> pos, unsigned copied,
>>* ordering of page lock and transaction start for journaling
>>
2018-06-02 19:06 GMT+02:00 Christoph Hellwig :
> On Sat, Jun 02, 2018 at 11:57:13AM +0200, Andreas Gruenbacher wrote:
>> Add a write_end operation to struct iomap_ops to provide a way of
>> overriding the default behavior of iomap_write_end. This will be used
>> for implementing data journaling in
2018-06-02 19:04 GMT+02:00 Christoph Hellwig :
> On Sat, Jun 02, 2018 at 11:57:12AM +0200, Andreas Gruenbacher wrote:
>> Add generic inline data handling by adding a pointer to the inline data
>> region to struct iomap. When handling a buffered IOMAP_INLINE write,
>> iomap_write_begin will copy th
2018-05-18 18:04 GMT+02:00 Christoph Hellwig :
> On Tue, May 15, 2018 at 10:16:52AM +0200, Andreas Gruenbacher wrote:
>> > Yes. And from a quick look we can easily handle "stuffed" aka inline
>> > data with the existing architecture. We just need a new IOMAP_INLINE
>> > flag for the extent type.
2018-05-18 17:56 GMT+02:00 Christoph Hellwig :
> On Wed, May 16, 2018 at 10:27:18PM +0200, Andreas Gruenbacher wrote:
>> I/O completion triggers when dio->ref reaches zero, so
>> iomap_dio_bio_end_io will never evaluate submit.waiter before the
>> atomic_dec_and_test in iomap_dio_rw. We probably ne
2018-04-06 16:44 GMT+02:00 Bob Peterson :
> Hi,
>
> - Original Message -
> (snip)
>> +static int gfs2_iomap_begin_write(struct inode *inode, loff_t pos, loff_t
>> length,
>> + unsigned flags, struct iomap *iomap)
> (snip)
>> +{
>> + struct metapath mp = { .
Herbert Xu schrieb am Mi. 4. Apr. 2018 um
17:51:
> On Wed, Apr 04, 2018 at 11:46:28AM -0400, Bob Peterson wrote:
> >
> > The patches look good. The big question is whether to add them to this
> > merge window while it's still open. Opinions?
>
> We're still hashing out the rhashtable interface so
Hi Arnd,
2018-02-02 16:43 GMT+01:00 Arnd Bergmann :
> The new crc32c logic in gfs2_log_header_v2 causes a link
> error without libcrc32c:
>
> ERROR: "crc32c" [fs/gfs2/gfs2.ko] undefined!
>
> While the original patch selected CONFIG_CRYPTO_CRC32C to deal
> with this issue, it turned out to be the w
2018-01-11 22:15 GMT+01:00 Andreas Gruenbacher :
> With the traditional page-based writes, blocks are allocated separately
> for each page written to. With iomap writes, we can allocate a lot more
> blocks at once, with a fraction of the allocation overhead for each
> page.
Oops, please ignore th
2015-09-11 13:28 GMT+02:00 Andrew Price :
> That makes sense to me. I assume we would remove the #include
> from gfs2_ondisk.h and replace it with our own user space
> types header. I'm worried about clashes using the kernel type names though,
> so we might need to process the header somehow to ch
Thanks!
Andreas
Bob,
2015-08-26 19:45 GMT+02:00 Bob Peterson :
> NAK. I'm pretty sure this indexing was intentional. The "0th" entry is just
> to print the entry number.
ah, I see now that the gfs2_gltype array contains a special first
entry that makes things balance out again. My mistake.
Thanks,
Andreas
Stephen,
2015-08-24 19:42 GMT+02:00 Stephen Smalley :
>> BACKGROUND
>>
>> Selinux currently assumes that, after initialization, inode->i_security
>> always
>> represents the current security label of the inode. This assumption works
>> for
>> local file systems; any change of the label must go
69 matches
Mail list logo