History log of /scripts/checkstack.pl
Revision Date Author Comments
e05503ef1186ad33dfe56794407891eb1dd93ef6 18-May-2011 Jean Delvare <khali@linux-fr.org> Haavard Skinnemoen has left Atmel

Haavard's e-mail address at Atmel is no longer valid.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Havard Skinnemoen <hskinnemoen@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
1f2a144f5ab5e836b5ca8f67bd76b759fa947751 23-Feb-2010 Stephen Hemminger <shemminger@vyatta.com> scripts: improve checkstack

Cleanup checkstack script:
* Turn on strict checking
* Fix resulting error message because the declaration syntax
was incorrect.
* Remove incorrect and misleading use of prototype
- prototype not required for this type of sort function
because $a and $b are being used in this contex
- if prototype was being used it should be for both arguments
* Use closure for sort function

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Arjan van de Ven <arjan@infradead.org>
Cc: Cong Wang <amwang@redhat.com>
Cc: Michal Marek <mmarek@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Michal Marek <mmarek@suse.cz>
d41e2d7317cd55cc5135356a05c289537b0f6d70 22-Oct-2008 Martin Habets <errandir_news@mph.eclipse.co.uk> sparc: Add checkstack support

Add sparc support to checkstack.

Signed-off-by: Martin Habets <errandir_news@mph.eclipse.co.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
89d49841e9e7a90b04b036b7dbe7521b55edbe24 10-Oct-2008 Christian Borntraeger <borntraeger@de.ibm.com> [S390] Fix checkstack for s390

With -march=z990 and later gcc can use the long displacement facility
insruction lay for stack register handling. This patch adopts checkstack
to catch lay in addition to ahi and aghi.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
abddaec56ebb7911bbf0578a4636a74bd7376d92 25-Jul-2008 Eric Sandeen <sandeen@redhat.com> fix checkstack.pl arch detection

uname -m was leaving a newline in $arch, and not passing the tests.

Also, printing the unknown arch on failure is probably helpful.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
585e93ae83b80c874bf4eb50a239027cef5db4af 25-Jul-2008 Eric Sandeen <sandeen@redhat.com> find dynamic stack allocations in checkstack.pl

Currently, checkstack.pl only looks for fixed subtractions from the stack
pointer. However, things like this:

void function(int size)
{
char stackbuster[size << 2];
...

are certainly worth pointing out, I think.

This could perhaps be done more cleanly, and the following patch only
adds "dynamic" REs for x86 and x86_64, but it works:

0x00b0 crypto_cbc_decrypt_inplace [cbc]: Dynamic (%rax)
0x00ad crypto_pcbc_decrypt_inplace [pcbc]: Dynamic (%rax)
0x02f6 crypto_pcbc_encrypt_inplace [pcbc]: Dynamic (%rax)
0x036c _crypto_xcbc_digest_setkey [xcbc]: Dynamic (%rax)
...

(Inspired by Keith Owens' old stack-check script)

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2b54aaef7a3a77f208bc14f576010da4fb8dfe29 06-Feb-2008 Joern Engel <joern@lazybastard.org> Claim maintainership for block2mtd and update email addresses

I have been prime author and maintainer of block2mtd from day one, but
neither MAINTAINERS nor the module source makes this fact clear. And while
I'm at it, update my email addresses tree-wide, as the old address
currently bounces and change my name to "joern" as unicode will likely
continue to cause trouble until the end of this century.

Signed-off-by: Joern Engel <joern@lazybastard.org>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
562d139cc587fc7f7fb8e07aad13cdd2a412c9a7 20-Oct-2007 Kyle McMartin <kyle@shortfin.cabal.ca> [PARISC] Port checkstack.pl to parisc

Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
477116e69dc48aaa70cca47668cd4aa82f39e05c 19-Oct-2007 Joern Engel <joern@logfs.org> fix a trivial typo in scripts/checkstack.pl

Trivial change in a comment.

Signed-off-by: Joern Engel <joern@logfs.org>
Signed-off-by: Andre Haupt <andre@finow14.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
1e9535a591cf003e77c822da0e329a733705e80b 17-Oct-2007 Mike Frysinger <vapier@gentoo.org> Add stack checking for Blackfin

Simply fill out the bits in checkstack.pl for Blackfin. I thought I already
sent this, but I don't see it in -mm anywhere ...

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Cc: Bryan Wu <bryan.wu@analog.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
0367d89274d47941b1bc02e35ddad24077de3ce7 04-Jan-2006 Haavard Skinnemoen <hskinnemoen@atmel.com> [AVR32] checkstack support

Add regexes to recognize stack frame adjustments in AVR32 code.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
271c511db9d37d6797745adb1f151a8bd2838c6f 22-Aug-2006 Johannes Berg <johannes@sipsolutions.net> [POWERPC] make checkstack work with ARCH=powerpc

This patch adds 'powerpc' architecture support to checkstack.pl.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Paul Mackerras <paulus@samba.org>
8ad2914d9cc55be651ef3bd676981a72c9001a47 25-Jun-2006 Randy Dunlap <rdunlap@xenotime.net> [PATCH] checkstack: print module names

Finding "init_module" high stack usage problems is challenging when there
are over 1600 "init_module" functions in the kernel tree, so make
checkstack.pl print out the filename where the stack usage occurs. This is
useful for code built as loadable modules.

For built-in code, it just prints the kernel image file name, like
"vmlinux". Examples:

(before patch:)
0x0000000d callback: 1928
0xffffffff81678c09 huft_build: 1560
0x0018 init_module: 1512

(after patch:)
0x0000000d callback [divacapi]: 1928
0xffffffff81678c09 huft_build [vmlinux]: 1560
0x0018 init_module [hdaps]: 1512

Also change one if-series to use elsif to cut down on unneeded tests.

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Acked-by: Joern Engel <joern@wh.fh-wedel.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
71378be91f5473e89c8be170c6e49edda3bdbb67 07-Apr-2006 Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it> kbuild: fix mode of checkstack.pl and other files.

Make it executable like it should be. Do the same for other files intended to be
executed by the user - the ones called by the build process needn't be
executable as they already work (as argument to their interpreter).

Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 17-Apr-2005 Linus Torvalds <torvalds@ppc970.osdl.org> Linux-2.6.12-rc2

Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.

Let it rip!