brad-lewis approved this pull request.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/pull/407#pullrequestreview-49254397
--
openzfs-developer
brad-lewis approved this pull request.
Looks good.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/pull/372#pullrequestreview-38781210
--
openzfs
brad-lewis approved this pull request.
Looks good.
I noted a few nits with extra tabs that could be removed.
> @@ -282,10 +283,11 @@ boolean_t arc_watch = B_FALSE;
int arc_procfd;
#endif
-static kmutex_tarc_reclaim_lock;
-static kcondvar_t arc_reclaim_thread_cv;
-sta
Closed #584.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/pull/584#event-1618419096
--
openzfs: openzfs-developer
Permalink:
brad-lewis requested changes on this pull request.
> + * which otherwise would be skipped for entries in the dbuf cache.
+ */
+void
+arc_buf_access(arc_buf_t *buf)
+{
+ mutex_enter(>b_evict_lock);
+ arc_buf_hdr_t *hdr = buf->b_hdr;
+
+ /*
+* Avoid taking the
Reviewed by: Serapheim Dimitropoulos
Reviewed by: Brad Lewis
Reviewed by: George Wilson
ZFS starts syncing a TXG if there's 64MB of dirty data. This can result in very
short TXG syncs, which can be inefficient because the ratio of metadata to user
data is poor. Typically, this is not a real
Reviewed by: George Wilson
Reviewed by: Serapheim Dimitropoulos
The zfs_dbuf_evict_key TSD (thread-specific data) is not necessary - we can
instead pass a flag down in a few
places to prevent recursive dbuf eviction. Making this change has 3 benefits:
1. The code semantics are easier to
Reviewed by: Serapheim Dimitropoulos
Reviewed by: Prakash Surya
To make zloop for resilient to coreadm configuration differences on the various
illumos distributions, we should enable per process core dumps at the start of
zloop.
Upstream bug:
Reviewed by: Pavel Zakharov
Reviewed by: George Wilson
Currently vdev_label_sync and vdev_uberblock_sync take a zio_t and assume
that its io_private is a pointer to the good_writes count. They should
instead accept this argument explicitly.
Reviewed by: Dan Kimmel
Reviewed by: John Kennedy
Must clear slow-disk zinject injections in test cleanup routine.
Otherwise, when this test fails, it causes most subsequent tests to fail.
Upstream bug: DLPX-48060
You can view, comment on, or
…log devices
Reviewed by: George Wilson
Reviewed by: Prakash Surya
Reviewed by: Matt Ahrens
Add vdev_print_tree() in spa_check_for_missing_logs() when some log
devices are missing to ease debugging
Upstream bug:
Reviewed by: Name Chris Williamson
Reviewed by: Name Sebastien Roy
When given an empty string as a rootds value, bootcfg -C fails with
the error message 'could not set nextboot: '' is an invalid name'.
This should be allowed because it
…dev_validate
Reviewed by: George Wilson
Reviewed by: Matt Ahrens
ztest failed with uncorrectable IO error despite having the fix for #7163.
Both sides of the mirror have CANT_OPEN_BAD_LABEL, which also distinguishes
it from that issue.
Reviewed by: Serapheim Dimitropoulos
Reviewed by: Prakash Surya
There should be a mechanism to override the ashift reported by the
underlying devices, at pool creation time. For now, it will be a
global tunable.
Upstream bug: DLPX-50992
You
Reviewed by: Dan Kimmel
Reviewed by: Prashanth Sreenivasa
Reviewed by: Paul Dagnelie
With compressed ARC (bug #6950) we use up to 25% of our CPU to decompress
indirect blocks, under a workload of random cached reads. To reduce this
Reviewed by: George Wilson
Reviewed by: Prashanth Sreenivasa
These changes were added to help debug issue #9187.
Essentially, in the original bug, vdev_validate() seems to fails in
vdev_label_read_config() and prints "failed reading config". This
Reviewed by: Serapheim Dimitropoulos
Reviewed by: Dan Kimmel dan.kim...@delphix.com
If a core file is not created in the cwd the test fails. The solution is
to invoke `coreadm -i core` just before running this test.
Also included are Makefile changes in zfstest cannot
Reviewed by: Paul Dagnelie
Reviewed by: Dan Kimmel
Reviewed by: John Kennedy
The zfs performance test suite should be using checksum=edonr.
Upstream bug: DLPX-50672
You can view, comment on, or merge this pull request online
Reviewed by: Serapheim Dimitropoulos
Reviewed by: Pavel Zakharov
Reviewed by: George Wilson
When iterating over a ZAP object, we're almost always certain to iterate over
the entire object.
If there are multiple leaf blocks, we can realize a performance win by issuing
reads for all the
leaf
See Matt's comment.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/pull/672#issuecomment-408173187
--
openzfs: openzfs-developer
Permalink:
Closed #672.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/pull/672#event-1755591899
--
openzfs: openzfs-developer
Permalink:
Reviewed by: Matt Ahrens
Reviewed by: Prashanth Sreenivasa
Reviewed by: John Kennedy
This panic was hit three times during device removal tests:
vdev_indirect_mark_obsolete+0xc8(ff03885a6000, 20003000, 800)
free_mapped_segment_cb+0x2e(ff03885a6000, 20003000, 800)
Reviewed by: Matt Ahrens
Reviewed by: Prakash Surya
During the analysis of a hang we were able to discovery that during calls to
dsl_dataset_hold_obj we could call dsl_bookmark_init_ds which would allocate
the DSL's ds_bookmarks AVL tree.
If we have multiple threads trying to instantiate
Reviewed by: Sebastien Roy
Reviewed by: Pavel Zakharov
Reviewed by: Serapheim Dimitropoulos
This bug presented itself with /temp filesystem of some databases failing to
mount. It turns out that mountd
doesn't think the filesystem is in the sharetab, so it refuses to allow the
remote system
Reviewed by: Sara Hartse
Reviewed by: George Wilson
We've had 2 cases where the devids of disks were shuffled, preventing domain0
from being imported, which
required a tedious manual process to zero-out devids through kmdb during zpool
import.
This feature would add a tunable to
Reviewed by: Prakash Surya
Reviewed by: Serapheim Dimitropoulos
A recent test failed while running ztest, and produced the following result:
05/01 10:25:22 ztest -V -m 2 -r 0 -R 1 -v 2 -a 9 -T 43 -P 11 -s 128m -f
/var/tmp/os-ztest
zloop finished, 1 crashes found
running: cat ztest.cores
Reviewed by: Brad Lewis
Reviewed by: Matt Ahrens
Reviewed by: Sara Hartse
While running the zfs test suite for an unrelated change, I observed a crash.
The problem is that when we are
opening the pool, spa_load_impl() calls
dmu_objset_find(dsl_destroy_inconsistent) before calling
Reviewed by: Serapheim Dimitropoulos
Reviewed by: Matt Ahrens
Reviewed by: Prashanth Sreenivasa
aggsum_fini() does not free as_buckets. It should do so.
Upstream bug: DLPX-58607
You can view, comment on, or merge this pull request online at:
https://github.com/openzfs/openzfs/pull/679
--
Reviewed by: Matt Ahrens
Reviewed by: Brad Lewis
While running zloop, this assertion was hit:
assertion failed for thread 0xfd7ffe64a240,
thread-id 334: dn->dn_phys->dn_type || dn->dn_allocated_txg, file
../../../uts/common/fs/zfs/dnode.c, line 1327
libc.so.1`_lwp_kill+0xa()
Reviewed by: Serapheim Dimitropoulos
Reviewed by: George Wilson
The ZFS range locking code in zfs_rlock.c/h depends on ZPL-specific data
structures, specifically znode_t.
However, it's also used by the ZVOL code, which uses a "dummy" znode_t to pass
to the range locking code.
We should clean
Reviewed by: George Wilson
Reviewed by: Pavel Zakharov
In usr/src/uts/common/disp/cpupart.c, cpupart_create() allocates a buffer and
assigns it to the
cp_lgrploads member of a cpupart_t struct:
pp->cp_nlgrploads = lgrp_plat_max_lgrps();
pp->cp_lgrploads = kmem_zalloc(sizeof (lpl_t) *
Reviewed by: Brad Lewis
Reviewed by: Prakash Surya
Reviewed by: Paul Dagnelie
Problem
mdb's ::stacks dcmd can loop forever if it encounters a bad frame pointer that
points to itself.
Solution
Check that the stack grows in the direction expected. For platforms like x86
where the stack grows
Reviewed by: Sebastien Roy
Reviewed by: Serapheim Dimitropoulos
Reviewed by: Matt Ahrens
Problem Statement
ZFS Channel program scripts currently require a timeout, so that hung or
long-running scripts return
a timeout error instead of causing ZFS to get wedged. This limit can currently
be
Reviewed by: Serapheim Dimitropoulos
Reviewed by: Sara Hartse
Reviewed by: Pavel Zakharov
Reviewed by: Matt Ahrens
after running "zfstest" and then using "reboot -d" and "::findleaks", there's a
couple of leaks like the following:
kmem_alloc_8 leak: 2 buffers, 8 bytes each, 16 bytes total
brad-lewis commented on this pull request.
> @@ -1431,6 +1433,7 @@ vdev_open(vdev_t *vd)
vd->vdev_asize = asize;
vd->vdev_max_asize = max_asize;
vd->vdev_ashift = MAX(ashift, vd->vdev_ashift);
+ vd->
@brad-lewis pushed 1 commit.
6a011e2 9236 nuke spa_dbgmsg
--
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/openzfs/openzfs/pull/580/files/b2e7f36afc829bb3e9ac87f479fab2e213f41a6e..6a011e28705ad106f2a2809be864d58db95bbe05
@brad-lewis pushed 1 commit.
8d8a566 9236 nuke spa_dbgmsg
--
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/openzfs/openzfs/pull/580/files/9e6bd4e52120bc9b0a0176656bf8753b7c121e5c..8d8a56690529bd2addca6c6602ee0ea1e1bbb8b3
…K devices
Reviewed by: George Wilson
Reviewed by: John Kennedy
We hit a panic in the removal_with_ganging test using vdevs with 4k ashift for
testing.
The problem is that the test intentionally induces ganging in allocations as
small as
… manpage
Reviewed by: Sebastien Roy
Reviewed by: Serapheim Dimitropoulos
Reviewed by: Steve Gonczi
This is part of device removal that should be documented.
Upstream bug: DLPX-47652
You can view, comment on,
Reviewed by: Matt Ahrens
Reviewed by: John Kennedy
Here is an instance where we see a big discrepancy.
estimate is : 431217656 bytes
actual size is : 492215048 bytes
Without the -e flag, the discrepancy is much higher.
Upstream bug: DLPX-45514
You
Reviewed by: Matt Ahrens
Reviewed by: Chris Williamson
Test 13 would fail because of attempts to zpool destroy -f a pool that was
still busy. Changed those calls to destroy_pool which does a retry loop, and
the problem is no longer reproducible.
Reviewed by: Paul Dagnelie
Reviewed by: Matt Ahrens
metaslab size can exceed offset addressable by spacemap. The vdev can address
up to 2^63 * SPA_MAXBLOCKSIZE (512).
A metaslab can address up to 2^47 * 2^vdev_ashift. Therefore we may need to
increase the
Reviewed by: Serapheim Dimitropoulos
Reviewed by: George Wilson
Updates to indirect blocks of spacemaps can contribute significantly to write
inflation.
Therefore we want to reduce the indirect block size of spacemaps from 128K to
16K.
Reviewed by: Serapheim Dimitropoulos
Reviewed by: George Wilson
While expanding stored pools, we ran into a panic using an old pool.
Steps to reproduce:
jkennedy-origin% sudo zpool create -o version=2 test c2t1d0
jkennedy-origin% sudo
Reviewed by: Matt Ahrens
Reviewed by: Serapheim Dimitropoulos
Problem
Illumos bug 8373 was integrated, which now presents a code path where
"dmu_tx_assign" can fail.
When "dmu_tx_assign" fails, it will not issue the lwb that was passed in to
At the start of the zloop logs we find a warning that states "/bin/zloop: line
150: sudo: command not found".
/bin/zloop: line 150: sudo: command not found
Upstream bug: DLPX-52252
You can view, comment on, or merge this pull request online at:
https://github.com/openzfs/openzfs/pull/615
--
…ons to their next stages without leaving them accumulate changes
Reviewed by: Matt Ahrens <m...@delphix.com>
Reviewed by: Brad Lewis <brad.le...@delphix.com>
Creating a fragmented pool in a DCenter VM and continuously writing to it with
multiple instances of randwritecomp, we get t
You can view, comment on, or merge this pull request online at:
https://github.com/openzfs/openzfs/pull/618
-- Commit Summary --
* 9454 ::zfs_blkstats should count embedded blocks
* 9443 panic when scrub a v10 pool
-- File Changes --
M usr/src/uts/common/fs/zfs/dsl_scan.c (13)
--
Reviewed by: Sebastien Roy
Reviewed by: Matt Ahrens
Reviewed by: Prashanth Sreenivasa
Seen in a test suite run of checkpoint_big_rewind which uses a nested pool.
Does not appear to reproduce easily.
Current theory is that the
Thanks Matt and Andy. I will close this request and try again with other
relevant delphix commits.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/pull/603#issuecomment-379869565
Closed #603.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/pull/603#event-1564629388
--
openzfs: openzfs-developer
Permalink:
This request is really a replacement for
https://github.com/openzfs/openzfs/pull/603.
The fix for 9338 is dependent on other fixes that are included here. Doing so
eliminated the merging issues.
You can view, comment on, or merge this pull request online at:
Reviewed by: Matt Ahrens
Reviewed by: Serapheim Dimitropoulos
A memory leak occurs on lines 209 and 213 because the config is not freed in
the error case.
The interface to add_config() seems less than ideal - it would be better if it
copied any
brad-lewis commented on this pull request.
> @@ -1675,6 +1675,26 @@ function is_pool_removed #pool
return $?
}
+function wait_for_degraded
+{
+ typeset pool=$1
+ typeset timeout=${2:-30}
+ typeset t0=$SECONDS
+
+ while :; do
+ zpool status
…block with checksum error
Reviewed by: George Wilson
Reviewed by: Paul Dagnelie
Reviewed by: Pavel Zakharov
This assertion (VERIFY) failure was reported when reading a block. Turns out
the problem is that if
we get an
9422 zfs diff and zdb should explicitly mark objects that are on the deleted
queue
Reviewed by: Matt Ahrens
Reviewed by: Pavel Zakharov
It is possible for zfs to "leak" objects in such a way that they are not freed,
but are also not accessible
You can view, comment on, or merge this pull request online at:
https://github.com/openzfs/openzfs/pull/603
-- Commit Summary --
* 9338 moved dnode has incorrect dn_next_type
* 9339 ztest process hung remapping blocks from a removed vdev
-- File Changes --
M
Reviewed by: John Kennedy
Reviewed by: Matt Ahrens
Datasets that are deeply nested (~100 levels) are impractical. We just put a
limit of 50 levels to newly created datasets. Existing datasets should work
without a problem.
The problem can be seen by
You can view, comment on, or merge this pull request online at:
https://github.com/openzfs/openzfs/pull/597
-- Commit Summary --
* 9328 zap code can take advantage of c99
* 9329 panic in zap_leaf_lookup() due to concurrent zapification
-- File Changes --
M
@brad-lewis pushed 1 commit.
9a4f19a Merge branch 'master' into openzfs-DLPX-49012
--
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/openzfs/openzfs/pull/580/files/8d8a56690529bd2addca6c6602ee0ea1e1bbb8b3
Reviewed by: Prakash Surya
Reviewed by: George Wilson
This project's goal is to make read-heavy channel programs and zfs(1m)
administrative commands faster by caching all the metadata that they will
need in the dbuf layer. This will prevent
Reviewed by: George Wilson
Reviewed by: Sebastien Roy
Calibration of the APIC timer is currently performed by doing one mesurement at
boot time. On some hypervisors, like Azure, the calibration can be quite off
because timers are
Reviewed by: Matt Ahrens
Reviewed by: George Wilson
We want to be able to pass various settings during import/open of a pool, which
are not only related to rewind. Instead of adding a new policy and duplicate a
bunch of code, we should just rename
Reviewed by: Serapheim Dimitropoulos
Reviewed by: Pavel Zakharov
Reviewed by: George Wilson
We should use zfs_dbgmsg instead of spa_dbgmsg. Or at least,
metaslab_condense() should call zfs_dbgmsg because
brad-lewis commented on this pull request.
> @@ -3104,18 +3103,23 @@ check_sharetab()
}
/*
-* Remember the mod time, then after getting the
-* write lock check again. If another thread
-* already did the update, then there's no
-* work to
Yes, I got ahead of myself in trying to upstream a group of delphix commits.
Obviously we should back this out.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
@lundman, your analysis looks right on to me.
I'm doing some further testing on a change similar to what you suggested.
Sorry for the slow response.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
I switched the order of commands in arc_fini() to address the panic in
arc_space_return.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/pull/679#issuecomment-422248590
68 matches
Mail list logo