Re: [PATCH] mm/memory.c: remove warning from an uninitialized spinlock. was: Re: 2.6.21-rc7-mm2

Andrew Morton
2007-04-28T06:54:13Z

On Sat, 28 Apr 2007 08:25:17 +0200 Borislav Petkov <bbpetkov@yahoo.de> wrote:

> > __attribute__ __address_will_be_overwritten_so_don't_bother_warning_me__?
> >
> > /me going to read gcc docs...
>
> Sorry, no such thing in the docs to do
>
> spinlock_t __attribute__((__uninitialized__)) *ptl;
>
> in order to suppress warnings.

Bummer. Thanks for checking.

> But if function size is our concern here, even
> shorter would be:
>
> Index: linux-mm/mm/memory.c
> ===================================================================
> --- linux-mm.orig/mm/memory.c 2007-04-26 19:57:14.000000000 +0200
> +++ linux-mm/mm/memory.c 2007-04-26 20:00:30.000000000 +0200
> @@ -1488,7 +1488,7 @@
> pte_t *pte;
> int err;
> struct page *pmd_page;
> - spinlock_t *ptl;
> + spinlock_t *ptl = 0;
>
> pte = (mm == &init_mm) ?
> pte_alloc_kernel(pmd, addr) :

hm, that'll have the same seven-byte cost as `= NULL;', won't it?