Commit Graph

20318 Commits

Author SHA1 Message Date
Brian Behlendorf 5fd80ff7ef Merge branch 'linux-kernel-disk' into refs/top-bases/linux-zfs-branch 2010-08-02 13:53:17 -07:00
Brian Behlendorf b4c4755bb0 Merge commit 'refs/top-bases/linux-kernel-disk' into linux-kernel-disk 2010-08-02 13:53:15 -07:00
Brian Behlendorf 341b493185 Merge branch 'linux-have-spl-debug' into refs/top-bases/linux-zfs-branch 2010-08-02 13:53:08 -07:00
Brian Behlendorf 14422e4259 Merge commit 'refs/top-bases/linux-have-spl-debug' into linux-have-spl-debug 2010-08-02 13:53:06 -07:00
Brian Behlendorf ec04ed0fbb Merge branch 'linux-have-mntent' into refs/top-bases/linux-zfs-branch 2010-08-02 13:53:00 -07:00
Brian Behlendorf c0c23fb02f Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent 2010-08-02 13:52:58 -07:00
Brian Behlendorf fd164fdb40 Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2010-08-02 13:52:57 -07:00
Brian Behlendorf 5d145c70f1 Merge branch 'fix-branch' into refs/top-bases/zfs-branch 2010-08-02 13:52:56 -07:00
Brian Behlendorf 0002f6f7e5 Merge commit 'refs/top-bases/fix-branch' into fix-branch 2010-08-02 13:49:05 -07:00
Brian Behlendorf 215b84f12f Merge branch 'fix-stack-inline' into refs/top-bases/fix-branch 2010-08-02 13:49:05 -07:00
Brian Behlendorf 8d443f35c4 Merge branch 'fix-stack-ztest' into refs/top-bases/fix-branch 2010-08-02 13:49:04 -07:00
Brian Behlendorf 084b700b92 New TopGit dependency: fix-stack-inline 2010-08-02 13:49:02 -07:00
Ned Bass 411dd65af1 Inline zio_execute() to reduce stack use
Deep recursive call chains are contributing to segfaults in ztest due to
heavy stack use.  Inlining zio_execute() helps reduce the stack depth of
the zio_notify_parent() -> zio_execute() -> zio_wait() recursive cycle.
I am no longer seeing ztest segfaults in this code path with this change.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2010-08-02 13:47:49 -07:00
Ned Bass 526d004cf5 Inline dbuf_findbp() to reduce stack use
Deep recursive call chains are contributing to segfaults in ztest due
to heavy stack use.  Inlining dbuf_findbp() helps reduce the stack depth
of the dbuf_findbp() -> dbuf_hold_impl() cycle.  However, segfaults are
still occurring in this code path, so further reductions are still needed.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2010-08-02 13:47:21 -07:00
Ned Bass dd72f3d647 Inline zio_notify_parent() to reduce stack use
Deep recursive call chains are contributing to segfaults in ztest due
to heavy stack use.  Inlining zio_notify_parent() helps reduce the
stack depth of the zio_notify_parent() -> zio_execute() -> zio_done()
recursive cycle.  I am no longer seeing ztest segfaults in this code
path with this change combined with the zio_done() stack reduction in
the previous commit.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2010-08-02 13:46:48 -07:00
Brian Behlendorf ca5262f030 Reduce stack by inlining spa_impl_load
The spa_load function may call itself recursively through
the spa_load_impl function.  This call path of spa_load->
spa_load_impl->spa_load->spa_load_impl takes 640 bytes of
stack.  By forcing spa_load_impl to be inlined as part of
spa_load the can be reduced to 448 bytes, for a savings of
192 bytes,
2010-08-02 13:45:28 -07:00
Brian Behlendorf a8a452d74b Initial commit for fix-stack-inline topic branch 2010-08-02 13:44:56 -07:00
Ned Bass bb20b03060 Move ztest_od_t structures to the heap
A number of ztest functions create one or more 312B ztest_od_t data
structures.  To conserve stack usage, this commit moves all of these data
structures to the heap.  However, I am still seeing ztest segfaults due
to heavy stack usage of the dbuf_findbp() -> dbuf_hold_impl() recursion.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2010-08-02 13:42:25 -07:00
Brian Behlendorf d85703c480 Merge branch 'linux-have-mlslabel' into refs/top-bases/linux-zfs-branch 2010-08-02 13:24:19 -07:00
Brian Behlendorf fd1a5226a9 Merge commit 'refs/top-bases/linux-have-mlslabel' into linux-have-mlslabel 2010-08-02 13:24:17 -07:00
Brian Behlendorf 5a75578b99 Merge branch 'linux-spa-thread' into refs/top-bases/linux-zfs-branch 2010-08-02 13:24:12 -07:00
Brian Behlendorf ba8f3085ca Merge commit 'refs/top-bases/linux-spa-thread' into linux-spa-thread 2010-08-02 13:24:10 -07:00
Brian Behlendorf 84db3581c3 Merge branch 'linux-topology' into refs/top-bases/linux-zfs-branch 2010-08-02 13:24:04 -07:00
Brian Behlendorf 2a15280353 Merge commit 'refs/top-bases/linux-topology' into linux-topology 2010-08-02 13:24:02 -07:00
Brian Behlendorf 83058943de Merge branch 'linux-sha2' into refs/top-bases/linux-zfs-branch 2010-08-02 13:23:57 -07:00
Brian Behlendorf dca5a535cd Merge commit 'refs/top-bases/linux-sha2' into linux-sha2 2010-08-02 13:23:55 -07:00
Brian Behlendorf 82dc97f462 Merge branch 'linux-user-util' into refs/top-bases/linux-zfs-branch 2010-08-02 13:23:49 -07:00
Brian Behlendorf 189685f2bb Merge commit 'refs/top-bases/linux-user-util' into linux-user-util 2010-08-02 13:23:47 -07:00
Brian Behlendorf ef1ea46bd4 Merge branch 'linux-events' into refs/top-bases/linux-zfs-branch 2010-08-02 13:23:42 -07:00
Brian Behlendorf 52b1e9edad Merge commit 'refs/top-bases/linux-events' into linux-events 2010-08-02 13:23:40 -07:00
Brian Behlendorf fbae8d0a92 Merge branch 'linux-kernel-module' into refs/top-bases/linux-zfs-branch 2010-08-02 13:23:34 -07:00
Brian Behlendorf 8a2017515b Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2010-08-02 13:23:32 -07:00
Brian Behlendorf ee89d487c9 Merge branch 'linux-kernel-device' into refs/top-bases/linux-zfs-branch 2010-08-02 13:23:26 -07:00
Brian Behlendorf 02648544c7 Merge commit 'refs/top-bases/linux-kernel-device' into linux-kernel-device 2010-08-02 13:23:24 -07:00
Brian Behlendorf 19cbaae01c Merge branch 'linux-have-idmap' into refs/top-bases/linux-zfs-branch 2010-08-02 13:23:19 -07:00
Brian Behlendorf ae2d3042ab Merge commit 'refs/top-bases/linux-have-idmap' into linux-have-idmap 2010-08-02 13:23:17 -07:00
Brian Behlendorf e3f24c0281 Merge branch 'linux-ztest' into refs/top-bases/linux-zfs-branch 2010-08-02 13:23:12 -07:00
Brian Behlendorf a1fd05c6a5 Merge commit 'refs/top-bases/linux-ztest' into linux-ztest 2010-08-02 13:23:09 -07:00
Brian Behlendorf 999337606c Merge branch 'linux-unused' into refs/top-bases/linux-zfs-branch 2010-08-02 13:23:04 -07:00
Brian Behlendorf 0de1c4f4ce Merge commit 'refs/top-bases/linux-unused' into linux-unused 2010-08-02 13:23:02 -07:00
Brian Behlendorf caa1caa4a0 Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch 2010-08-02 13:22:56 -07:00
Brian Behlendorf 494a650cbb Merge commit 'refs/top-bases/linux-libspl' into linux-libspl 2010-08-02 13:22:55 -07:00
Brian Behlendorf 939778e799 Merge branch 'linux-zpios' into refs/top-bases/linux-zfs-branch 2010-08-02 13:22:49 -07:00
Brian Behlendorf c53e5d229c Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2010-08-02 13:22:47 -07:00
Brian Behlendorf 24743e1ee8 Merge branch 'linux-user-disk' into refs/top-bases/linux-zfs-branch 2010-08-02 13:22:41 -07:00
Brian Behlendorf 590bd1dd2f Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk 2010-08-02 13:22:39 -07:00
Brian Behlendorf 0578f16042 Merge branch 'linux-symbol-collisions' into refs/top-bases/linux-zfs-branch 2010-08-02 13:22:33 -07:00
Brian Behlendorf 4909386ed9 Merge commit 'refs/top-bases/linux-symbol-collisions' into linux-symbol-collisions 2010-08-02 13:22:31 -07:00
Brian Behlendorf 5b17c2bcee Merge branch 'linux-kernel-mem' into refs/top-bases/linux-zfs-branch 2010-08-02 13:22:24 -07:00
Brian Behlendorf 73759365d7 Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem 2010-08-02 13:22:22 -07:00