Skip to contentSkip to conversation

Linux 2.4.0-ac9

DISCUSSION Steven Cole 4 participants 5 messages Jan 14, 2001

lore
Share & tools
lore
#0 lore raw

I got the following error while building 2.4.0-ac9:

shmem.c:971: shmem_readlink' undeclared here (not in a function) shmem.c:971: initializer element is not constant shmem.c:971: (near initialization for shmem_symlink_inode_operations.readlink')
shmem.c:972: shmem_follow_link' undeclared here (not in a function) shmem.c:972: initializer element is not constant shmem.c:972: (near initialization for shmem_symlink_inode_operations.follow_link')
shmem.c:973: initializer element is not constant shmem.c:973: (near initialization for shmem_symlink_inode_operations') shmem.c:973: initializer element is not constant shmem.c:973: (near initialization for shmem_symlink_inode_operations') make[2]: *** [shmem.o] Error 1

It looks like changes were recently made to linux/mm/shmem.c.

Steven
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#1 lore raw

Re: Linux 2.4.0-ac9 (shmem.c errors)

Quoted 16 lines · On 14-Jan-2001 Steven Cole wrote:

I got the following error while building 2.4.0-ac9:

shmem.c:971: shmem_readlink' undeclared here (not in a function) shmem.c:971: initializer element is not constant shmem.c:971: (near initialization for shmem_symlink_inode_operations.readlink')
shmem.c:972: shmem_follow_link' undeclared here (not in a function) shmem.c:972: initializer element is not constant shmem.c:972: (near initialization for shmem_symlink_inode_operations.follow_link')
shmem.c:973: initializer element is not constant shmem.c:973: (near initialization for shmem_symlink_inode_operations') shmem.c:973: initializer element is not constant shmem.c:973: (near initialization for shmem_symlink_inode_operations') make[2]: *** [shmem.o] Error 1

Quoted 1 line

It looks like changes were recently made to linux/mm/shmem.c.

I'm getting the same errors here. Christoph Rohland submitted a series of shm patches to the list -- I tried --dry-run reapplying them and at least a couple of them partially applied. Looks like it didnt all get integrated.

--
Mark Orr
[email protected]

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#2 lore raw
In reply to Steven Cole

You need to enable CONFIG_SWAPFS.
Those functions are enclosed by #ifdef CONFIG_SWAPFS and #endif, but the references to them aren't.

Karsten

Quoted 16 lines · Steven Cole

I got the following error while building 2.4.0-ac9:

shmem.c:971: shmem_readlink' undeclared here (not in a function) shmem.c:971: initializer element is not constant shmem.c:971: (near initialization for shmem_symlink_inode_operations.readlink')
shmem.c:972: shmem_follow_link' undeclared here (not in a function) shmem.c:972: initializer element is not constant shmem.c:972: (near initialization for shmem_symlink_inode_operations.follow_link')
shmem.c:973: initializer element is not constant shmem.c:973: (near initialization for shmem_symlink_inode_operations') shmem.c:973: initializer element is not constant shmem.c:973: (near initialization for shmem_symlink_inode_operations') make[2]: *** [shmem.o] Error 1

Quoted 2 lines

It looks like changes were recently made to linux/mm/shmem.c.

--

 Karsten Hopp        | Mail: [email protected] |
 Red Hat Deutschland |    [email protected] | SAP-AG LinuxLab
 Hauptstaetterstr.58 | Tel: +49-711-96437-0    | Neurottstrasse 16
 D-70178 Stuttgart   | http://www.redhat.de    | 69190 Walldorf

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#3 lore raw
In reply to Steven Cole
Quoted 4 lines · Karsten Hopp

You need to enable CONFIG_SWAPFS.
Those functions are enclosed by #ifdef CONFIG_SWAPFS and #endif, but the references to them aren't.

Quoted 19 lines

Karsten

Quoted 16 lines · Steven Cole

I got the following error while building 2.4.0-ac9:

shmem.c:971: shmem_readlink' undeclared here (not in a function) shmem.c:971: initializer element is not constant shmem.c:971: (near initialization for shmem_symlink_inode_operations.readlink')
shmem.c:972: shmem_follow_link' undeclared here (not in a function) shmem.c:972: initializer element is not constant shmem.c:972: (near initialization for shmem_symlink_inode_operations.follow_link')
shmem.c:973: initializer element is not constant shmem.c:973: (near initialization for shmem_symlink_inode_operations') shmem.c:973: initializer element is not constant shmem.c:973: (near initialization for shmem_symlink_inode_operations') make[2]: *** [shmem.o] Error 1

Yes, enabling CONFIG_SWAPFS works just fine:

[scole@localhost scole]$ uname -a
Linux localhost.localdomain 2.4.0-ac9 #2 Sat Jan 13 20:23:00 MST 2001 i686 unknown

Here is a little patch which also fixes the symptoms of the build problem, and makes a kernel 1510 bytes smaller (without CONFIG_SWAPFS). Someone more knowlegable than I will have to verify its correctness.

This patch is against 2.4.0-ac9.

mm/shmem.c Sat Jan 13 20:27:32 2001 renamed from mm/shmem.c.orig Sat Jan 13 20:23:36 2001 +2 -0
@@ -968,8 +968,10 @@
 
 static struct inode_operations shmem_symlink_inode_operations = {
        truncate:       shmem_truncate,
+#ifdef CONFIG_SWAPFS
        readlink:       shmem_readlink,
        follow_link:    shmem_follow_link,
+#endif
 };
 
 static struct file_operations shmem_dir_operations = {

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#4 lore raw
In reply to Steven Cole
Quoted 4 lines · Steven Cole

Here is a little patch which also fixes the symptoms of the build problem, and makes a kernel 1510 bytes smaller (without CONFIG_SWAPFS). Someone more knowlegable than I will have to verify its correctness.

Thanks, this is correct. I did not test the symlink fixes w/o CONFIG_SWAPFS. My bad.

Greetings
Christoph

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/