[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7f55875c46ab4c4989323ede57f6e46d@AcuMS.aculab.com>
Date: Thu, 30 Mar 2023 14:58:24 +0000
From: David Laight <David.Laight@...LAB.COM>
To: "'y86-dev@...tonmail.com'" <y86-dev@...tonmail.com>,
Miguel Ojeda <ojeda@...nel.org>,
Alex Gaynor <alex.gaynor@...il.com>,
Wedson Almeida Filho <wedsonaf@...il.com>,
Boqun Feng <boqun.feng@...il.com>, Gary Guo <gary@...yguo.net>,
Björn Roy Baron <bjorn3_gh@...tonmail.com>,
Alice Ryhl <alice@...l.io>
CC: "rust-for-linux@...r.kernel.org" <rust-for-linux@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"patches@...ts.linux.dev" <patches@...ts.linux.dev>
Subject: RE: [PATCH v3 12/13] rust: sync: reduce stack usage of
`UniqueArc::try_new_uninit`
From: y86-dev@...tonmail.com
> Sent: 29 March 2023 23:34
>
> `UniqueArc::try_new_uninit` calls `Arc::try_new(MaybeUninit::uninit())`.
> This results in the uninitialized memory being placed on the stack,
> which may be arbitrarily large due to the generic `T` and thus could
> cause a stack overflow for large types.
Does that mean rust is using (the equivalent of) alloca() ?
That is banned for C code in the kernel for any sizes.
David
-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
Powered by blists - more mailing lists