Skip to content

Resolving duplicate local functions #604

@rosslagerwall

Description

@rosslagerwall

The following patch fails to compile:

/usr/libexec/kpatch/create-diff-object: ERROR: dir.o: kpatch_create_patches_sections: 2528: lookup_local_symbol call_filldir (dir.c)
diff --git a/fs/ext4/dir.c b/fs/ext4/dir.c
index f8d56e4..949aa45 100644
--- a/fs/ext4/dir.c
+++ b/fs/ext4/dir.c
@@ -115,6 +115,9 @@ static int ext4_readdir(struct file *filp,
    struct super_block *sb = inode->i_sb;
    int ret = 0;
    int dir_has_error = 0;
+   static unsigned int count;
+
+   count += 1;

    if (is_dx_dir(inode)) {
        err = ext4_dx_readdir(filp, dirent, filldir);

The problem is that both fs/ext3/dir.c and fs/ext4/dir.c define call_filldir. I haven't yet thought of a better way of handling this...

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions