lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4B337E60.4000200@windriver.com>
Date:	Thu, 24 Dec 2009 08:44:48 -0600
From:	Jason Wessel <jason.wessel@...driver.com>
To:	Stephen Rothwell <sfr@...b.auug.org.au>
CC:	linux-next@...r.kernel.org, linux-kernel@...r.kernel.org,
	Martin Hicks <mort@....com>
Subject: Re: linux-next: kgdb tree build warning

Stephen Rothwell wrote:
> Hi Jason,
>
> On Wed, 23 Dec 2009 22:09:00 -0600 Jason Wessel <jason.wessel@...driver.com> wrote:
>   
>> Stephen Rothwell wrote:
>>     
>>> Today's linux-next build (x86_64_allmodconfig) produced this warning:
>>>
>>> kernel/debug/kdb/kdb_bp.c: In function 'kdb_bp':
>>> kernel/debug/kdb/kdb_bp.c:434: warning: the frame size of 32880 bytes is larger than 2048 bytes
>>>
>>>       
> That function has a kdb_bp_t on its stack which contains an NR_CPUS array
> of pointers.  NR_CPUS is 4096 (in this build) and pointers are 8 bytes,
> so there is 32K right there :-(
>
>   

Thank you for the details.  I see that I can see the same problem if I
set CONFIG_MAXSMP and use CONFIG_FRAME_WARN=2048.  It also allowed me to
test that the problem is really fixed. :-)

I had talked with Martin a while back and he gave me some patches which
cleaned up the breakpoint code (kdb_bp.c).   The hw breakpoint support
was implemented a different way in the new kdb/kgdb.   You stumbled upon
something that was intended to already be removed from the source.

As a side point you pointed me to an area where I could remove some
other code that should not be there because the debug core is already
handling the operations.  The net result is this problem is fixed, and 2
more variables are gone out of that struct.


-       int             bp_cpu;         /* Cpu #  (if bp_global == 0) */
-       kdbhard_bp_t   *bp_hard[NR_CPUS]; /* Hardware breakpoint
structure */
-       int             bp_adjust;      /* Adjustment to PC for real
-                                        * instruction */

Thanks,
Jason.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ