Re: IPSEC crashes after r253088

From: Julian Elischer <julian_at_freebsd.org>
Date: Tue, 23 Jul 2013 21:33:59 +0800
On 7/23/13 8:00 PM, Andrey V. Elsukov wrote:
> On 23.07.2013 15:28, Andre Oppermann wrote:
>> On 23.07.2013 09:28, Andrey V. Elsukov wrote:
>>> On 21.07.2013 00:43, Taku YAMAMOTO wrote:
>>>> After r253088, systems with IPSEC and KSTACK_PAGES < 4 crashes on
>>>> booting into multi-user mode.
>>>>
>>>> The crash is due to sysctl -a in /etc/rc.d/initrandom ended up with
>>>> kernel stack overflow.
>>>> where type is struct ipsecstat which is 12560 bytes of size (larger than
>>>> 3 pages) of size when processing net.inet.ipsec.ipsecstats.
>>> Hi,
>>>
>>> Only few fields of struct ipsecstat is used, the rest fields are never
>>> updated. We can split it to several structures, or just remove unused
>>> fields. What is better?
>> Not storing it on the stack?
> Also, I already prepared patch to test.

'both'.. one isn't supposed to have structures of any size on the 
stack in the kernel.
At one stage the max was 64 bytes.. has grown since then obviously.
*And* it could do with simplification.

>
>
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"
Received on Tue Jul 23 2013 - 11:34:19 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:39 UTC