Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile failure on Ubuntu Karmic x64 #18

Closed
ghstridr opened this issue Jun 4, 2010 · 7 comments
Closed

Compile failure on Ubuntu Karmic x64 #18

ghstridr opened this issue Jun 4, 2010 · 7 comments

Comments

@ghstridr
Copy link

ghstridr commented Jun 4, 2010

cc1: warnings being treated as errors
/root/zfs-kernel/zfs-0.4.9/module/zfs/dsl_deleg.c: In function ‘dsl_deleg_get’:
/root/zfs-kernel/zfs-0.4.9/module/zfs/dsl_deleg.c:364: error: the frame size of 1040 bytes is larger than 1024 bytes
make[5]: *** [/root/zfs-kernel/zfs-0.4.9/module/zfs/dsl_deleg.o] Error 1
make[4]: *** [/root/zfs-kernel/zfs-0.4.9/module/zfs] Error 2
make[3]: *** [module/root/zfs-kernel/zfs-0.4.9/module] Error 2
make[3]: Leaving directory /usr/src/linux-headers-2.6.31-14-server' make[2]: *** [modules] Error 2 make[2]: Leaving directory/root/zfs-kernel/zfs-0.4.9/module'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/zfs-kernel/zfs-0.4.9'
make: *** [all] Error 2

@ghstridr
Copy link
Author

ghstridr commented Jun 4, 2010

spl compiles fine and installs into the kernel.

@behlendorf
Copy link
Contributor

Interesting it looks like under Ubuntu Karmic the maximum kernel stack frame size has been dropped from 2048 to 1024 bytes. It's correctly flagging the dsl_deleg_get() function as stack heavy. I'll make sure this get's addressed in the next release. This isn't the first place I've found stack size/depth issues.

@Saiyine
Copy link

Saiyine commented Jun 5, 2010

Confirmed also in Lucid Lynx x64.

@laxmanpradhan
Copy link

I can also confirm build problems on Ubuntu 10.04 64 bit (Virtual Box). SPL compiled and splat regression tests all passed. ZFS rpm build failed. Same problem as above.
CC [M] /tmp/zfs-build-manager-ESirXxYS/BUILD/zfs-0.4.9/module/zfs/dsl_dataset.o
CC [M] /tmp/zfs-build-manager-ESirXxYS/BUILD/zfs-0.4.9/module/zfs/dsl_deleg.o
cc1: warnings being treated as errors
/tmp/zfs-build-manager-ESirXxYS/BUILD/zfs-0.4.9/module/zfs/dsl_deleg.c: In function ‘dsl_deleg_get’:
/tmp/zfs-build-manager-ESirXxYS/BUILD/zfs-0.4.9/module/zfs/dsl_deleg.c:364: error: the frame size of 1040 bytes is larger than 1024 bytes
make[7]: *** [/tmp/zfs-build-manager-ESirXxYS/BUILD/zfs-0.4.9/module/zfs/dsl_deleg.o] Error 1
make[6]: *** [/tmp/zfs-build-manager-ESirXxYS/BUILD/zfs-0.4.9/module/zfs] Error 2
make[5]: *** [module/tmp/zfs-build-manager-ESirXxYS/BUILD/zfs-0.4.9/module] Error 2
make[5]: Leaving directory /usr/src/linux-headers-2.6.32-21-generic' make[4]: *** [modules] Error 2 make[4]: Leaving directory/tmp/zfs-build-manager-ESirXxYS/BUILD/zfs-0.4.9/module'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory /tmp/zfs-build-manager-ESirXxYS/BUILD/zfs-0.4.9' make[2]: *** [all] Error 2 make[2]: Leaving directory/tmp/zfs-build-manager-ESirXxYS/BUILD/zfs-0.4.9'
error: Bad exit status from /tmp/zfs-build-manager-ESirXxYS/TMP/rpm-tmp.4ZiiLL (%build)

RPM build errors:
Bad exit status from /tmp/zfs-build-manager-ESirXxYS/TMP/rpm-tmp.4ZiiLL (%build)
make[1]: *** [rpm-common] Error 1
make[1]: Leaving directory `/usr/src/zfs'
make: *** [rpm-modules] Error 2

@belarm
Copy link

belarm commented Jun 16, 2010

I was able to get zfs to compile despite this issue by adding '-fno-stack-protector' to EXTRA_CFLAGS in the modules/zfs Makefile. I cannot speak to the safety of this, however - I'm still getting everything set up.

@behlendorf
Copy link
Contributor

Great, using '-fno-stack-protector' is safe for this since we already know we won't overflow the stack. I have a better fix for this in my local tree which I hope to push fairly soon. I've been bogged down working through the issues of updating the code base to the latest opensolaris sources.

@behlendorf
Copy link
Contributor

This build issue was fixed by commit 869764f in the latest source.

This was referenced Apr 19, 2012
akatrevorjay added a commit to akatrevorjay/zfs that referenced this issue Dec 16, 2017
# This is the 1st commit message:
Merge branch 'master' of https://github.com/zfsonlinux/zfs

* 'master' of https://github.com/zfsonlinux/zfs:
  Enable QAT support in zfs-dkms RPM

# This is the commit message openzfs#2:

Import 0.6.5.7-0ubuntu3

# This is the commit message openzfs#3:

gbp changes

# This is the commit message openzfs#4:

Bump ver

# This is the commit message openzfs#5:

-j9 baby

# This is the commit message openzfs#6:

Up

# This is the commit message openzfs#7:

Yup

# This is the commit message openzfs#8:

Add new module

# This is the commit message openzfs#9:

Up

# This is the commit message openzfs#10:

Up

# This is the commit message openzfs#11:

Bump

# This is the commit message openzfs#12:

Grr

# This is the commit message openzfs#13:

Yay

# This is the commit message openzfs#14:

Yay

# This is the commit message openzfs#15:

Yay

# This is the commit message openzfs#16:

Yay

# This is the commit message openzfs#17:

Yay

# This is the commit message openzfs#18:

Yay

# This is the commit message openzfs#19:

yay

# This is the commit message openzfs#20:

yay

# This is the commit message openzfs#21:

yay

# This is the commit message openzfs#22:

Update ppa script

# This is the commit message openzfs#23:

Update gbp conf with br changes

# This is the commit message openzfs#24:

Update gbp conf with br changes

# This is the commit message openzfs#25:

Bump

# This is the commit message openzfs#26:

No pristine

# This is the commit message openzfs#27:

Bump

# This is the commit message openzfs#28:

Lol whoops

# This is the commit message openzfs#29:

Fix name

# This is the commit message openzfs#30:

Fix name

# This is the commit message openzfs#31:

rebase

# This is the commit message openzfs#32:

Bump

# This is the commit message openzfs#33:

Bump

# This is the commit message openzfs#34:

Bump

# This is the commit message openzfs#35:

Bump

# This is the commit message openzfs#36:

ntrim

# This is the commit message openzfs#37:

Bump

# This is the commit message openzfs#38:

9

# This is the commit message openzfs#39:

Bump

# This is the commit message openzfs#40:

Bump

# This is the commit message openzfs#41:

Bump

# This is the commit message openzfs#42:

Revert "9"

This reverts commit de488f1.

# This is the commit message openzfs#43:

Bump

# This is the commit message openzfs#44:

Account for zconfig.sh being removed

# This is the commit message openzfs#45:

Bump

# This is the commit message openzfs#46:

Add artful

# This is the commit message openzfs#47:

Add in zed.d and zpool.d scripts

# This is the commit message openzfs#48:

Bump

# This is the commit message openzfs#49:

Bump

# This is the commit message openzfs#50:

Bump

# This is the commit message openzfs#51:

Bump

# This is the commit message openzfs#52:

ugh

# This is the commit message openzfs#53:

fix zed upgrade

# This is the commit message openzfs#54:

Bump

# This is the commit message openzfs#55:

conf file zed.d

# This is the commit message #56:

Bump
markroper added a commit to markroper/zfs that referenced this issue Feb 12, 2020
Using zfs with Lustre, an arc_read can trigger kernel memory allocation
that in turn leads to a memory reclaim callback and a deadlock within a
single zfs process. This change uses spl_fstrans_mark and
spl_trans_unmark to prevent the reclaim attempt and the deadlock
(https://zfsonlinux.topicbox.com/groups/zfs-devel/T4db2c705ec1804ba).
The stack trace observed is:

     #0 [ffffc9002b98adc8] __schedule at ffffffff81610f2e
     openzfs#1 [ffffc9002b98ae68] schedule at ffffffff81611558
     openzfs#2 [ffffc9002b98ae70] schedule_preempt_disabled at ffffffff8161184a
     openzfs#3 [ffffc9002b98ae78] __mutex_lock at ffffffff816131e8
     openzfs#4 [ffffc9002b98af18] arc_buf_destroy at ffffffffa0bf37d7 [zfs]
     openzfs#5 [ffffc9002b98af48] dbuf_destroy at ffffffffa0bfa6fe [zfs]
     openzfs#6 [ffffc9002b98af88] dbuf_evict_one at ffffffffa0bfaa96 [zfs]
     openzfs#7 [ffffc9002b98afa0] dbuf_rele_and_unlock at ffffffffa0bfa561 [zfs]
     openzfs#8 [ffffc9002b98b050] dbuf_rele_and_unlock at ffffffffa0bfa32b [zfs]
     openzfs#9 [ffffc9002b98b100] osd_object_delete at ffffffffa0b64ecc [osd_zfs]
    openzfs#10 [ffffc9002b98b118] lu_object_free at ffffffffa06d6a74 [obdclass]
    openzfs#11 [ffffc9002b98b178] lu_site_purge_objects at ffffffffa06d7fc1 [obdclass]
    openzfs#12 [ffffc9002b98b220] lu_cache_shrink_scan at ffffffffa06d81b8 [obdclass]
    openzfs#13 [ffffc9002b98b278] shrink_slab at ffffffff811ca9d8
    openzfs#14 [ffffc9002b98b338] shrink_node at ffffffff811cfd94
    openzfs#15 [ffffc9002b98b3b8] do_try_to_free_pages at ffffffff811cfe63
    openzfs#16 [ffffc9002b98b408] try_to_free_pages at ffffffff811d01c4
    openzfs#17 [ffffc9002b98b488] __alloc_pages_slowpath at ffffffff811be7f2
    openzfs#18 [ffffc9002b98b580] __alloc_pages_nodemask at ffffffff811bf3ed
    openzfs#19 [ffffc9002b98b5e0] new_slab at ffffffff81226304
    openzfs#20 [ffffc9002b98b638] ___slab_alloc at ffffffff812272ab
    openzfs#21 [ffffc9002b98b6f8] __slab_alloc at ffffffff8122740c
    openzfs#22 [ffffc9002b98b708] kmem_cache_alloc at ffffffff81227578
    openzfs#23 [ffffc9002b98b740] spl_kmem_cache_alloc at ffffffffa048a1fd [spl]
    openzfs#24 [ffffc9002b98b780] arc_buf_alloc_impl at ffffffffa0befba2 [zfs]
    openzfs#25 [ffffc9002b98b7b0] arc_read at ffffffffa0bf0924 [zfs]
    openzfs#26 [ffffc9002b98b858] dbuf_read at ffffffffa0bf9083 [zfs]
    openzfs#27 [ffffc9002b98b900] dmu_buf_hold_by_dnode at ffffffffa0c04869 [zfs]

Signed-off-by: Mark Roper <markroper@gmail.com>
allanjude pushed a commit to KlaraSystems/zfs that referenced this issue Apr 28, 2020
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants