Hi Andreas,
On Mon, Jun 12, 2023 at 12:33 PM Andreas Gruenbacher
wrote:
...
>
> @@ -152,24 +151,18 @@ static void signal_our_withdraw(struct gfs2_sbd *sdp)
> */
> clear_bit(SDF_JOURNAL_LIVE, >sd_flags);
> if (!sb_rdonly(sdp->sd_vfs)) {
> - struct
syzbot suspects this issue was fixed by commit:
commit 504a10d9e46bc37b23d0a1ae2f28973c8516e636
Author: Bob Peterson
Date: Fri Apr 28 16:07:46 2023 +
gfs2: Don't deref jdesc in evict
bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=1544372d28
start commit:
Some fields such as gt_logd_secs of the struct gfs2_tune are accessed
without holding the lock gt_spin in gfs2_show_options():
val = sdp->sd_tune.gt_logd_secs;
if (val != 30)
seq_printf(s, ",commit=%d", val);
And thus can cause data races when gfs2_show_options() and other functions
On Tue, Jun 13, 2023 at 3:05 PM Alexander Aring wrote:
> Hi Andreas,
>
> On Mon, Jun 12, 2023 at 12:33 PM Andreas Gruenbacher
> wrote:
> ...
> >
> > @@ -152,24 +151,18 @@ static void signal_our_withdraw(struct gfs2_sbd *sdp)
> > */
> > clear_bit(SDF_JOURNAL_LIVE, >sd_flags);
> >
On Tue, Jun 13, 2023 at 5:07 AM Tuo Li wrote:
> Some fields such as gt_logd_secs of the struct gfs2_tune are accessed
> without holding the lock gt_spin in gfs2_show_options():
>
> val = sdp->sd_tune.gt_logd_secs;
> if (val != 30)
> seq_printf(s, ",commit=%d", val);
>
> And thus can cause
On 12/06/2023 17:33, Andreas Gruenbacher wrote:
So far, at mount time, gfs2 would take the freeze glock in shared mode
and then immediately drop it again, turning it into a cached glock that
can be reclaimed at any time. To freeze the filesystem cluster-wide,
the node initiating the freeze
On Tue, Jun 13, 2023 at 12:29 PM Andrew Price wrote:
> On 12/06/2023 17:33, Andreas Gruenbacher wrote:
> > So far, at mount time, gfs2 would take the freeze glock in shared mode
> > and then immediately drop it again, turning it into a cached glock that
> > can be reclaimed at any time. To
The iomap-based read operations done by gfs2 for its system files, such
as rindex, may sometimes be interrupted and return -EINTR. This
confuses some users of gfs2_internal_read(). Fix that by retrying
interrupted reads.
Signed-off-by: Bob Peterson
Signed-off-by: Andreas Gruenbacher
---