2007-01-12 21:05:47

by Russell King

[permalink] [raw]
Subject: Build regression since 2.6.19-git7: jffs2

The following configuration:

CONFIG_JFFS2_FS=y
CONFIG_JFFS2_FS_DEBUG=2
# CONFIG_JFFS2_FS_NAND is not set
# CONFIG_JFFS2_FS_NOR_ECC is not set
# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
CONFIG_JFFS2_ZLIB=y
CONFIG_JFFS2_RTIME=y
# CONFIG_JFFS2_RUBIN is not set

results in these build errors:

fs/jffs2/malloc.c: In function 'jffs2_alloc_full_dirent':
fs/jffs2/malloc.c:126: error: dereferencing pointer to incomplete type
fs/jffs2/malloc.c: In function 'jffs2_free_full_dirent':
fs/jffs2/malloc.c:132: error: dereferencing pointer to incomplete type
fs/jffs2/malloc.c: In function 'jffs2_alloc_full_dnode':
fs/jffs2/malloc.c:140: error: dereferencing pointer to incomplete type
fs/jffs2/malloc.c: In function 'jffs2_free_full_dnode':
fs/jffs2/malloc.c:146: error: dereferencing pointer to incomplete type
fs/jffs2/malloc.c: In function 'jffs2_alloc_raw_dirent':
fs/jffs2/malloc.c:154: error: dereferencing pointer to incomplete type

... etc ...

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of:


2007-01-13 10:51:19

by Adrian Bunk

[permalink] [raw]
Subject: [2.6 patch] fix the JFFS2_FS_DEBUG=2 compilation

On Fri, Jan 12, 2007 at 09:05:37PM +0000, Russell King wrote:
> The following configuration:
>
> CONFIG_JFFS2_FS=y
> CONFIG_JFFS2_FS_DEBUG=2
> # CONFIG_JFFS2_FS_NAND is not set
> # CONFIG_JFFS2_FS_NOR_ECC is not set
> # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
> CONFIG_JFFS2_ZLIB=y
> CONFIG_JFFS2_RTIME=y
> # CONFIG_JFFS2_RUBIN is not set
>
> results in these build errors:
>
> fs/jffs2/malloc.c: In function 'jffs2_alloc_full_dirent':
> fs/jffs2/malloc.c:126: error: dereferencing pointer to incomplete type
> fs/jffs2/malloc.c: In function 'jffs2_free_full_dirent':
> fs/jffs2/malloc.c:132: error: dereferencing pointer to incomplete type
> fs/jffs2/malloc.c: In function 'jffs2_alloc_full_dnode':
> fs/jffs2/malloc.c:140: error: dereferencing pointer to incomplete type
> fs/jffs2/malloc.c: In function 'jffs2_free_full_dnode':
> fs/jffs2/malloc.c:146: error: dereferencing pointer to incomplete type
> fs/jffs2/malloc.c: In function 'jffs2_alloc_raw_dirent':
> fs/jffs2/malloc.c:154: error: dereferencing pointer to incomplete type
>
> ... etc ...

Thanks for the report, patch below.

cu
Adrian


<-- snip -->


This patch fixes the following CONFIG_JFFS2_FS_DEBUG=2 compile
breakage introduced by commit 914e26379decf1fd984b22e51fd2e4209b7a7f1b:

<-- snip -->

...
fs/jffs2/malloc.c: In function 'jffs2_alloc_full_dirent':
fs/jffs2/malloc.c:126: error: dereferencing pointer to incomplete type
fs/jffs2/malloc.c: In function 'jffs2_free_full_dirent':
fs/jffs2/malloc.c:132: error: dereferencing pointer to incomplete type
fs/jffs2/malloc.c: In function 'jffs2_alloc_full_dnode':
fs/jffs2/malloc.c:140: error: dereferencing pointer to incomplete type
fs/jffs2/malloc.c: In function 'jffs2_free_full_dnode':
fs/jffs2/malloc.c:146: error: dereferencing pointer to incomplete type
fs/jffs2/malloc.c: In function 'jffs2_alloc_raw_dirent':
fs/jffs2/malloc.c:154: error: dereferencing pointer to incomplete type
...

<-- snip -->

Signed-off-by: Adrian Bunk <[email protected]>

commit 3a7722fc440d5214a718bc4b90b7691c04a1af67
Author: Adrian Bunk <[email protected]>
Date: Sat Jan 13 11:50:44 2007 +0100

sadf

diff --git a/fs/jffs2/debug.h b/fs/jffs2/debug.h
index 3daf3bc..f89c85d 100644
--- a/fs/jffs2/debug.h
+++ b/fs/jffs2/debug.h
@@ -13,6 +13,7 @@
#ifndef _JFFS2_DEBUG_H_
#define _JFFS2_DEBUG_H_

+#include <linux/sched.h>

#ifndef CONFIG_JFFS2_FS_DEBUG
#define CONFIG_JFFS2_FS_DEBUG 0

2007-01-13 11:29:19

by David Woodhouse

[permalink] [raw]
Subject: Re: [2.6 patch] fix the JFFS2_FS_DEBUG=2 compilation

On Sat, 2007-01-13 at 11:51 +0100, Adrian Bunk wrote:
> On Fri, Jan 12, 2007 at 09:05:37PM +0000, Russell King wrote:
> > The following configuration:
> >
> > CONFIG_JFFS2_FS=y
> > CONFIG_JFFS2_FS_DEBUG=2
> > # CONFIG_JFFS2_FS_NAND is not set
> > # CONFIG_JFFS2_FS_NOR_ECC is not set
> > # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
> > CONFIG_JFFS2_ZLIB=y
> > CONFIG_JFFS2_RTIME=y
> > # CONFIG_JFFS2_RUBIN is not set
> >
> > results in these build errors:
> >
> > fs/jffs2/malloc.c: In function 'jffs2_alloc_full_dirent':
> > fs/jffs2/malloc.c:126: error: dereferencing pointer to incomplete type
> > fs/jffs2/malloc.c: In function 'jffs2_free_full_dirent':
> > fs/jffs2/malloc.c:132: error: dereferencing pointer to incomplete type
> > fs/jffs2/malloc.c: In function 'jffs2_alloc_full_dnode':
> > fs/jffs2/malloc.c:140: error: dereferencing pointer to incomplete type
> > fs/jffs2/malloc.c: In function 'jffs2_free_full_dnode':
> > fs/jffs2/malloc.c:146: error: dereferencing pointer to incomplete type
> > fs/jffs2/malloc.c: In function 'jffs2_alloc_raw_dirent':
> > fs/jffs2/malloc.c:154: error: dereferencing pointer to incomplete type
> >
> > ... etc ...
>
> Thanks for the report, patch below.

The patch is already in the MTD git tree, which is still awaiting Linus
to pull.

--
dwmw2