mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-24 11:18:52 +03:00
OpenZFS 8063 - verify that we do not attempt to access inactive txg
Authored by: Matthew Ahrens <mahrens@delphix.com> Reviewed by: Serapheim Dimitropoulos <serapheim@delphix.com> Reviewed by: Pavel Zakharov <pavel.zakharov@delphix.com> Approved by: Robert Mustacchi <rm@joyent.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Ported-by: George Melikov <mail@gmelikov.ru> A standard practice in ZFS is to keep track of "per-txg" state. Any of the 3 active TXG's (open, quiescing, syncing) can have different values for this state. We should assert that we do not attempt to modify other (inactive) TXG's. Porting Notes: - ASSERTV added to txg_sync_waiting() for unused variable. OpenZFS-issue: https://www.illumos.org/issues/8063 OpenZFS-commit: https://github.com/openzfs/openzfs/commit/01acb46 Closes #6109
This commit is contained in:
committed by
Brian Behlendorf
parent
335b251ac1
commit
4747a7d3d4
+1
-11
@@ -20,7 +20,7 @@
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2011, 2016 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2011, 2017 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2014 Integros [integros.com]
|
||||
*/
|
||||
|
||||
@@ -109,16 +109,6 @@ static void zil_async_to_sync(zilog_t *zilog, uint64_t foid);
|
||||
#define LWB_EMPTY(lwb) ((BP_GET_LSIZE(&lwb->lwb_blk) - \
|
||||
sizeof (zil_chain_t)) == (lwb->lwb_sz - lwb->lwb_nused))
|
||||
|
||||
|
||||
/*
|
||||
* ziltest is by and large an ugly hack, but very useful in
|
||||
* checking replay without tedious work.
|
||||
* When running ziltest we want to keep all itx's and so maintain
|
||||
* a single list in the zl_itxg[] that uses a high txg: ZILTEST_TXG
|
||||
* We subtract TXG_CONCURRENT_STATES to allow for common code.
|
||||
*/
|
||||
#define ZILTEST_TXG (UINT64_MAX - TXG_CONCURRENT_STATES)
|
||||
|
||||
static int
|
||||
zil_bp_compare(const void *x1, const void *x2)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user