Commit 9579fe7
ZIL: flag crashed LWBs so we know not to process them
If the ZIL crashed, any outstanding LWBs are no longer interesting, so
if they return, we need to just clean them up and return, not try to do
any work on them. This is true even if they return success, as that may
be long after the pool suspended and resumed, depending on when/if the
kernel decides to return the IO to us. In particular, we must not try to
get the "next" LWB from zl_lwb_list, since they're no longer on that
list.
So, we put a flag on in-flight LWBs in zil_crash() when we move them
from zl_lwb_list to zl_lwb_crash_list, so we know what's going on when
they return.
Sponsored-by: Klara, Inc.
Sponsored-by: Wasabi Technology, Inc.
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Alexander Motin <alexander.motin@TrueNAS.com>
Signed-off-by: Rob Norris <rob.norris@klarasystems.com>
Closes openzfs#176221 parent 7d564e0 commit 9579fe7
2 files changed
Lines changed: 19 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
101 | 101 | | |
102 | 102 | | |
103 | 103 | | |
104 | | - | |
105 | | - | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
106 | 107 | | |
107 | 108 | | |
108 | 109 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1591 | 1591 | | |
1592 | 1592 | | |
1593 | 1593 | | |
1594 | | - | |
| 1594 | + | |
1595 | 1595 | | |
1596 | 1596 | | |
1597 | 1597 | | |
| |||
1611 | 1611 | | |
1612 | 1612 | | |
1613 | 1613 | | |
1614 | | - | |
1615 | | - | |
1616 | | - | |
| 1614 | + | |
| 1615 | + | |
| 1616 | + | |
| 1617 | + | |
| 1618 | + | |
1617 | 1619 | | |
1618 | 1620 | | |
1619 | 1621 | | |
| |||
1631 | 1633 | | |
1632 | 1634 | | |
1633 | 1635 | | |
| 1636 | + | |
| 1637 | + | |
| 1638 | + | |
| 1639 | + | |
| 1640 | + | |
1634 | 1641 | | |
1635 | | - | |
| 1642 | + | |
1636 | 1643 | | |
1637 | 1644 | | |
1638 | 1645 | | |
| |||
2747 | 2754 | | |
2748 | 2755 | | |
2749 | 2756 | | |
| 2757 | + | |
2750 | 2758 | | |
2751 | 2759 | | |
2752 | 2760 | | |
| |||
3733 | 3741 | | |
3734 | 3742 | | |
3735 | 3743 | | |
| 3744 | + | |
| 3745 | + | |
| 3746 | + | |
3736 | 3747 | | |
3737 | 3748 | | |
3738 | 3749 | | |
| |||
0 commit comments