Brian Behlendorf
0c11631b02
Fix for fix-stack-dmu_objset_snapshot should be 'sn' not '&sn'
...
I missed a instanse of removing the & operator when reducing the
stack usage in this function. This unfortunately doesn't cause
a compile warning but it is does cause ztest failures. Anyway,
update the topic branch to correct this mistake.
2010-06-28 10:06:29 -07:00
Brian Behlendorf
4aba89bb16
Merge commit 'refs/top-bases/linux-kernel-disk' into linux-kernel-disk
2010-06-16 14:43:35 -07:00
Brian Behlendorf
2f457b7bd0
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-06-16 14:43:17 -07:00
Brian Behlendorf
8de2671680
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
2010-06-16 14:43:17 -07:00
Brian Behlendorf
a0c72bab76
Merge commit 'refs/top-bases/fix-branch' into fix-branch
2010-06-16 14:39:41 -07:00
Brian Behlendorf
6504afae4a
Merge branch 'fix-stack-dmu_objset_snapshot' into refs/top-bases/fix-branch
2010-06-16 14:39:41 -07:00
Brian Behlendorf
bf02bcb6ee
New TopGit dependency: fix-stack-dmu_objset_snapshot
2010-06-16 14:39:39 -07:00
Brian Behlendorf
e163b08ba3
Add fix-stack-dmu_objset_snapshot topic branch
...
Reduce stack usage by 276 bytes by moving the snaparg struct from the
stack to the heap. We have limited stack space we must not waste.
2010-06-16 14:39:06 -07:00
Brian Behlendorf
a2ba5b83f8
Merge branch 'fix-stack-noinline' into refs/top-bases/fix-branch
2010-06-16 14:35:14 -07:00
Brian Behlendorf
94a22f54e5
Merge commit 'refs/top-bases/fix-branch' into fix-branch
2010-06-16 14:35:14 -07:00
Brian Behlendorf
23d291df44
New TopGit dependency: fix-stack-noinline
2010-06-16 14:35:11 -07:00
Brian Behlendorf
bbdb8184ec
Add fix-stack-noinline topic branch
...
Certain function must never be automatically inlined by gcc because
they are stack heavy or called recursively. This patch flags all
such functions I have found as 'noinline' to prevent gcc from making
the optimization.
2010-06-16 14:34:41 -07:00
Brian Behlendorf
d297febad2
Remove fix-stack dependency from fix-branch
2010-06-16 14:30:40 -07:00
Brian Behlendorf
850510ee8f
Merge commit 'refs/top-bases/linux-kernel-disk' into linux-kernel-disk
2010-06-16 14:27:48 -07:00
Brian Behlendorf
48ca6d3590
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-06-16 14:27:31 -07:00
Brian Behlendorf
7f979b27f4
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
2010-06-16 14:27:30 -07:00
Brian Behlendorf
30c03a0914
Merge branch 'fix-stack' into refs/top-bases/fix-branch
2010-06-16 14:27:29 -07:00
Brian Behlendorf
1388d58932
Merge commit 'refs/top-bases/fix-branch' into fix-branch
2010-06-16 14:27:29 -07:00
Brian Behlendorf
2115c30515
Revert fix-stack topic branch
...
This patch will be broken in to several independent stack reductions
and reapplied as new topic branches.
2010-06-16 14:23:31 -07:00
Brian Behlendorf
2084051282
Merge commit 'refs/top-bases/linux-kernel-disk' into linux-kernel-disk
2010-06-16 13:53:24 -07:00
Brian Behlendorf
aacc00b961
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-06-16 13:53:08 -07:00
Brian Behlendorf
6a19e49908
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
2010-06-16 13:53:07 -07:00
Brian Behlendorf
4c62777dcc
Merge commit 'refs/top-bases/fix-branch' into fix-branch
2010-06-16 13:49:56 -07:00
Brian Behlendorf
256505afb0
Merge branch 'fix-stack-dsl_deleg_get' into refs/top-bases/fix-branch
2010-06-16 13:49:55 -07:00
Brian Behlendorf
2709f5731b
New TopGit dependency: fix-stack-dsl_deleg_get
2010-06-16 13:49:53 -07:00
Brian Behlendorf
869764f64d
Add fix-stack-dsl_deleg_get topic branch
...
Reduce stack usage in dsl_deleg_get, gcc flagged it as consuming a
whopping 1040 bytes or potentially 1/4 of a 4K stack. This patch
moves all the large structures and buffer off the stack and on to
the heap. This includes 2 zap_cursor_t structs each 52 bytes in
size, 2 zap_attribute_t structs each 280 bytes in size, and 1
256 byte char array. The total saves on the stack is 880 bytes
after you account for the 5 new pointers added.
Also the source buffer length has been increased from MAXNAMELEN
to MAXNAMELEN+strlen(MOS_DIR_NAME)+1 as described by the comment in
dsl_dir_name(). A buffer overrun may have been possible with the
slightly smaller buffer.
2010-06-16 13:49:25 -07:00
Brian Behlendorf
08415a34fb
Merge commit 'refs/top-bases/linux-kernel-disk' into linux-kernel-disk
2010-06-16 12:44:53 -07:00
Brian Behlendorf
4738ecfcdc
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-06-16 12:44:09 -07:00
Brian Behlendorf
1ccdbb250b
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
2010-06-16 12:44:08 -07:00
Brian Behlendorf
912d828f0a
Merge commit 'refs/top-bases/fix-branch' into fix-branch
2010-06-16 12:40:40 -07:00
Brian Behlendorf
31cc6992c5
Merge branch 'fix-stack-dsl_dir_open_spa' into refs/top-bases/fix-branch
2010-06-16 12:40:39 -07:00
Brian Behlendorf
a2cbedd9e8
New TopGit dependency: fix-stack-dsl_dir_open_spa
2010-06-16 12:40:37 -07:00
Brian Behlendorf
0c524122bd
Add fix-stack-dsl_dir_open_spa topic branch
...
Reduce stack usage by 256 bytes by moving buf char array from
the stack to the heap.
2010-06-16 12:39:44 -07:00
Brian Behlendorf
70b7065e93
Merge commit 'refs/top-bases/linux-kernel-disk' into linux-kernel-disk
2010-06-16 12:12:28 -07:00
Brian Behlendorf
9fd12ce4fd
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-06-16 12:11:21 -07:00
Brian Behlendorf
2b71569742
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2010-06-16 12:11:20 -07:00
Brian Behlendorf
f00293115a
Merge commit 'refs/top-bases/gcc-branch' into gcc-branch
2010-06-16 12:11:19 -07:00
Brian Behlendorf
877a37d8bd
Merge branch 'gcc-uninit' into refs/top-bases/gcc-branch
2010-06-16 12:11:18 -07:00
Brian Behlendorf
8a001d8f59
Extra uninit vars flagged by gcc 4.1.2
...
Newer versions of the compiler are OK with this but for the sake of
older compilers explicitly initialize them.
2010-06-16 11:45:07 -07:00
Brian Behlendorf
2d15a98cb9
Merge commit 'refs/top-bases/linux-kernel-disk' into linux-kernel-disk
...
Conflicts:
module/zfs/include/sys/dmu.h
2010-06-14 16:59:02 -07:00
Brian Behlendorf
b41c7ff877
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-06-14 16:45:47 -07:00
Brian Behlendorf
7f181ac166
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
2010-06-14 16:45:46 -07:00
Brian Behlendorf
2f30cc0188
Merge branch 'fix-stack-lzjb' into refs/top-bases/fix-branch
2010-06-14 16:45:33 -07:00
Brian Behlendorf
1121733c6a
Merge commit 'refs/top-bases/fix-branch' into fix-branch
2010-06-14 16:45:33 -07:00
Brian Behlendorf
4327d5dce3
New TopGit dependency: fix-stack-lzjb
2010-06-14 16:45:31 -07:00
Brian Behlendorf
b8cc785fb6
Add fix-stack-lzjb topic branch
...
Reduce kernel stack usage by lzjb_compress() by moving uint16 array
off the stack and on to the heap. The exact performance implications
of this I have not measured but we absolutely need to keep stack
usage to a minimum. If/when this becomes and issue we optimize.
2010-06-14 16:45:01 -07:00
Brian Behlendorf
2392c05ea7
Merge commit 'refs/top-bases/fix-branch' into fix-branch
2010-06-14 16:43:33 -07:00
Brian Behlendorf
51322821f3
Merge branch 'fix-kstat-xuio' into refs/top-bases/fix-branch
2010-06-14 16:43:32 -07:00
Brian Behlendorf
f70976285e
New TopGit dependency: fix-kstat-xuio
2010-06-14 16:43:30 -07:00
Brian Behlendorf
f61a7ce9e1
Add fix-kstat-xuio topic branch
...
Move xiou stat structures from a header to the dmu.c source as is
done with all the other kstat interfaces. This information is local
to dmu.c registered the xuio kstat and should stay that way.
2010-06-14 16:43:01 -07:00