Re: Stack usage

John Hughes <[email protected]>
Newsgroups gmane.linux.cluster.ssic.devel
Message-ID <[email protected]>
So, here's one path that generates a stack overflow warning:

chown -> ... cfs_flush -> ... cfs_proc_write -> ... 
ext3_ordered_writepage -> ... drbd_send_dblock -> ... tcp_sendpage -> ...

Yow, that's a deap stack!

The big stack space users are:

252 cfsd_write
224 sock_sendmsg
196 ip_queue_xmit
144 mpage_writepages
124 cfs_proc_write
120 generic_make_request
112 tcp_sendmsg
104 __filemap_fdatawrite_range
104 __filemap_fdatawrite_range (in twice 'cos it's called twice due to fs stacking).
100 drbd_make_request_common

Here's the backtrace in all it's gory details:

do_IRQ: stack overflow: 504
 [<c01079ee>] dump_stack+0x1e/0x20
 [<c01094ce>] __overflow+0x1e/0x20
 [<c0109477>] do_IRQ+0xb7/0xf0
 =======================
 [<c0107426>] common_interrupt+0x1a/0x20
 [<c014ed76>] enable_irq+0x46/0xe0
 [<d089c3cc>] ei_start_xmit+0x14c/0x2d0 [8390]
 [<c041b1bb>] qdisc_restart+0x6b/0x230
 [<c040921f>] dev_queue_xmit+0x24f/0x310
 [<c042a463>] ip_finish_output+0x103/0x2d0
 [<c042aae2>] ip_output+0x52/0x70
 [<c042ad91>] ip_queue_xmit+0x291/0x5d0
 [<c043ccc9>] tcp_transmit_skb+0x3b9/0x770
 [<c043d193>] tcp_push_one+0x93/0x160
 [<c0431368>] tcp_sendmsg+0xd58/0x1160
 [<c0453179>] inet_sendmsg+0x49/0x60
 [<c03fde9f>] sock_sendmsg+0xbf/0x100
 [<c03fdf22>] kernel_sendmsg+0x42/0x50
 [<c0401a51>] sock_no_sendpage+0x61/0x80
 [<c04305b7>] tcp_sendpage+0x47/0xa0
 [<d08f0736>] _drbd_send_page+0x106/0x180 [drbd]
 [<d08f0a80>] drbd_send_dblock+0x2d0/0x3f0 [drbd]
 [<d08ea663>] drbd_make_request_common+0x7b3/0x940 [drbd]
 [<d08ea8dd>] drbd_make_request_26+0xed/0x2c0 [drbd]
 [<c0389efa>] generic_make_request+0xca/0x270
 [<c038a0f9>] submit_bio+0x59/0xf0
 [<c0175a5a>] submit_bh+0x13a/0x190
 [<c0173f32>] __block_write_full_page+0x202/0x370
 [<c0175836>] block_write_full_page+0x106/0x130
 [<d09587e4>] ext3_ordered_writepage+0xe4/0x1f0 [ext3]
 [<c019a515>] mpage_writepages+0x245/0x400
 [<c0156a32>] do_writepages+0x42/0x50
 [<c014fb2f>] __filemap_fdatawrite_range+0x9f/0xb0
 [<c014fbb6>] filemap_fdatawrite_range+0x36/0x40
 [<c014fdbf>] sync_page_range+0x8f/0x100
 [<c01533cb>] generic_file_writev+0xab/0xe0
 [<c02db504>] cfsd_write+0x254/0x2c0
 [<c02d5a9e>] cfs_proc_write+0x2fe/0x3f0
 [<c02d1798>] cfs_async_handler_write+0x58/0x200
 [<c02d1b42>] cfs_flush_one+0x172/0x250
 [<c02d1c71>] cfs_flush_list+0x51/0xb0
 [<c02d2248>] cfs_flush_inode+0x88/0xc0
 [<c02d0c7e>] cfs_writepages+0xce/0x180
 [<c0156a17>] do_writepages+0x27/0x50
 [<c014fb2f>] __filemap_fdatawrite_range+0x9f/0xb0
 [<c014fb72>] filemap_fdatawrite+0x32/0x40
 [<c02cc29f>] cfs_setattr+0x1ff/0x320
 [<c018fe70>] notify_change+0x2a0/0x2f7
 [<c016fb5e>] chown_common+0xbe/0x100
 [<c016fc98>] sys_fchown+0x38/0x50
 [<c0106997>] sysenter_past_esp+0x54/0x75



------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.