Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
fbsplash kernel error when compiling
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
Juventus
n00b
n00b


Joined: 19 Sep 2005
Posts: 10

PostPosted: Mon Sep 19, 2005 10:08 am    Post subject: fbsplash kernel error when compiling Reply with quote

i try to patch kernel with fbsplah like write here
Code:

For patching the kernel...

# cd /usr/src
# wget http://dev.gentoo.org/~spock/projects/gensplash/archive/fbsplash-0.9.2-r4-2.6.13-rc6.patch
# cd linux
# patch -p1 < ../fbsplash-0.9.2-r4-2.6.13-rc6.patch



and i get error when patching
Code:

patch -p1 < /usr/src/fbsplash-0.9.2-r4-2.6.13-rc6.patch
patching file Documentation/fb/00-INDEX
Reversed (or previously applied) patch detected!  Assume -R? [n] y
The next patch would create the file Documentation/fb/splash.txt,
which already exists!  Assume -R? [n] y
patching file Documentation/fb/splash.txt
patching file drivers/Makefile
Reversed (or previously applied) patch detected!  Assume -R? [n] y
patching file drivers/video/Kconfig
Reversed (or previously applied) patch detected!  Assume -R? [n] y
Hunk #1 succeeded at 813 (offset 26 lines).
Hunk #2 succeeded at 1543 (offset 26 lines).
patching file drivers/video/Makefile
Reversed (or previously applied) patch detected!  Assume -R? [n] y
The next patch would create the file drivers/video/cfbsplash.c,
which already exists!  Assume -R? [n] y
patching file drivers/video/cfbsplash.c
patching file drivers/video/console/bitblit.c
Reversed (or previously applied) patch detected!  Assume -R? [n] y
Hunk #3 succeeded at 383 (offset 15 lines).
patching file drivers/video/console/fbcon.c
Reversed (or previously applied) patch detected!  Assume -R? [n] y
Hunk #3 succeeded at 212 (offset 1 line).
Hunk #7 succeeded at 914 (offset 5 lines).
Hunk #8 succeeded at 1062 (offset 5 lines).
Hunk #9 succeeded at 1081 (offset 5 lines).
Hunk #10 succeeded at 1100 (offset 5 lines).
Hunk #11 succeeded at 1581 (offset 5 lines).
Hunk #12 succeeded at 1667 (offset 5 lines).
Hunk #13 succeeded at 1809 (offset 5 lines).
Hunk #14 succeeded at 1863 (offset 5 lines).
Hunk #15 succeeded at 1909 (offset 5 lines).
Hunk #16 succeeded at 1935 (offset 5 lines).
Hunk #17 succeeded at 1969 (offset 5 lines).
Hunk #18 succeeded at 2049 (offset 5 lines).
Hunk #19 succeeded at 2203 (offset 5 lines).
Hunk #20 succeeded at 2331 (offset 5 lines).
Hunk #21 succeeded at 2357 (offset 5 lines).
Hunk #22 succeeded at 2578 (offset 5 lines).
patching file drivers/video/fbcmap.c
Reversed (or previously applied) patch detected!  Assume -R? [n] y
Hunk #2 FAILED at 235.
Hunk #3 FAILED at 250.
2 out of 3 hunks FAILED -- saving rejects to file drivers/video/fbcmap.c.rej
The next patch would create the file drivers/video/fbsplash.c,
which already exists!  Assume -R? [n] y
patching file drivers/video/fbsplash.c
The next patch would create the file drivers/video/fbsplash.h,
which already exists!  Assume -R? [n] y
patching file drivers/video/fbsplash.h
The next patch would create the file include/linux/console_splash.h,
which already exists!  Assume -R? [n] y
patching file include/linux/console_splash.h
patching file include/linux/console_struct.h
Reversed (or previously applied) patch detected!  Assume -R? [n] y
patching file include/linux/fb.h
Reversed (or previously applied) patch detected!  Assume -R? [n] y
patching file include/linux/sysctl.h
Hunk #1 FAILED at 146.
1 out of 1 hunk FAILED -- saving rejects to file include/linux/sysctl.h.rej
patching file kernel/sysctl.c
Reversed (or previously applied) patch detected!  Assume -R? [n] y
Hunk #1 succeeded at 84 (offset -1 lines).
Hunk #2 succeeded at 400 (offset -6 lines).



then i enable it in kernel and use command
Code:

make && make modules_install


but i get this error
Code:

 make && make modules_install
  CHK     include/linux/version.h
  SPLIT   include/linux/autoconf.h -> include/config/*
make[1]: `arch/i386/kernel/asm-offsets.s' is up to date.
  CHK     include/asm-i386/asm_offsets.h
  CHK     include/linux/compile.h
  CC      init/do_mounts.o
  CC      init/do_mounts_rd.o
  CC      init/do_mounts_initrd.o
  LD      init/mounts.o
  LD      init/built-in.o
  CHK     usr/initramfs_list
  AS      arch/i386/kernel/vsyscall-note.o
  SYSCALL arch/i386/kernel/vsyscall-int80.so
  SYSCALL arch/i386/kernel/vsyscall-sysenter.so
  AS      arch/i386/kernel/vsyscall.o
  SYSCALL arch/i386/kernel/vsyscall-syms.o
  LD      arch/i386/kernel/built-in.o
  CC      kernel/sysctl.o
kernel/sysctl.c:408: error: `KERN_FBSPLASH' undeclared here (not in a function)
kernel/sysctl.c:408: error: initializer element is not constant
kernel/sysctl.c:408: error: (near initialization for `kern_table[15].ctl_name')
kernel/sysctl.c:415: error: initializer element is not constant
kernel/sysctl.c:415: error: (near initialization for `kern_table[15]')
kernel/sysctl.c:435: error: initializer element is not constant
kernel/sysctl.c:435: error: (near initialization for `kern_table[16]')
kernel/sysctl.c:445: error: initializer element is not constant
kernel/sysctl.c:445: error: (near initialization for `kern_table[17]')
kernel/sysctl.c:453: error: initializer element is not constant
kernel/sysctl.c:453: error: (near initialization for `kern_table[18]')
kernel/sysctl.c:461: error: initializer element is not constant
kernel/sysctl.c:461: error: (near initialization for `kern_table[19]')
kernel/sysctl.c:469: error: initializer element is not constant
kernel/sysctl.c:469: error: (near initialization for `kern_table[20]')
kernel/sysctl.c:477: error: initializer element is not constant
kernel/sysctl.c:477: error: (near initialization for `kern_table[21]')
kernel/sysctl.c:485: error: initializer element is not constant
kernel/sysctl.c:485: error: (near initialization for `kern_table[22]')
kernel/sysctl.c:493: error: initializer element is not constant
kernel/sysctl.c:493: error: (near initialization for `kern_table[23]')
kernel/sysctl.c:512: error: initializer element is not constant
kernel/sysctl.c:512: error: (near initialization for `kern_table[24]')
kernel/sysctl.c:520: error: initializer element is not constant
kernel/sysctl.c:520: error: (near initialization for `kern_table[25]')
kernel/sysctl.c:526: error: initializer element is not constant
kernel/sysctl.c:526: error: (near initialization for `kern_table[26]')
kernel/sysctl.c:533: error: initializer element is not constant
kernel/sysctl.c:533: error: (near initialization for `kern_table[27]')
kernel/sysctl.c:545: error: initializer element is not constant
kernel/sysctl.c:545: error: (near initialization for `kern_table[28]')
kernel/sysctl.c:556: error: initializer element is not constant
kernel/sysctl.c:556: error: (near initialization for `kern_table[29]')
kernel/sysctl.c:597: error: initializer element is not constant
kernel/sysctl.c:597: error: (near initialization for `kern_table[30]')
kernel/sysctl.c:605: error: initializer element is not constant
kernel/sysctl.c:605: error: (near initialization for `kern_table[31]')
kernel/sysctl.c:614: error: initializer element is not constant
kernel/sysctl.c:614: error: (near initialization for `kern_table[32]')
kernel/sysctl.c:622: error: initializer element is not constant
kernel/sysctl.c:622: error: (near initialization for `kern_table[33]')
kernel/sysctl.c:630: error: initializer element is not constant
kernel/sysctl.c:630: error: (near initialization for `kern_table[34]')
kernel/sysctl.c:649: error: initializer element is not constant
kernel/sysctl.c:649: error: (near initialization for `kern_table[35]')
kernel/sysctl.c:658: error: initializer element is not constant
kernel/sysctl.c:658: error: (near initialization for `kern_table[36]')
kernel/sysctl.c:660: error: initializer element is not constant
kernel/sysctl.c:660: error: (near initialization for `kern_table[37]')
make[1]: *** [kernel/sysctl.o] Error 1
make: *** [kernel] Error 2


I am using vanila-sources


Last edited by Juventus on Mon Sep 19, 2005 1:31 pm; edited 4 times in total
Back to top
View user's profile Send private message
Juventus
n00b
n00b


Joined: 19 Sep 2005
Posts: 10

PostPosted: Mon Sep 19, 2005 4:14 pm    Post subject: Reply with quote

can someone please help me, someone who knows how to fix that!

PLEASE i REALLY NEED HELP!
Back to top
View user's profile Send private message
Juventus
n00b
n00b


Joined: 19 Sep 2005
Posts: 10

PostPosted: Mon Sep 19, 2005 4:32 pm    Post subject: Reply with quote

no developers or moderators here? 8O :cry:
Back to top
View user's profile Send private message
Oliv
n00b
n00b


Joined: 17 Sep 2005
Posts: 35
Location: Montpellier (France)

PostPosted: Mon Sep 19, 2005 7:25 pm    Post subject: Reply with quote

Hello,

Well in fact you apply a patch which was previously applied... From kernel 2.6.8 fbsplash pacth is included in gentoo kernel sources.
so the easiest way to get clean sources is to reinstall them. Then recompile your kernel and don't forget to enable Splash option ;)
Back to top
View user's profile Send private message
Juventus
n00b
n00b


Joined: 19 Sep 2005
Posts: 10

PostPosted: Tue Sep 20, 2005 10:36 am    Post subject: Reply with quote

NO I AM USING vanilla-sources which doen't has fbsplash already in it! I am not using gentoo-sources!
Back to top
View user's profile Send private message
Oliv
n00b
n00b


Joined: 17 Sep 2005
Posts: 35
Location: Montpellier (France)

PostPosted: Tue Sep 20, 2005 12:25 pm    Post subject: Reply with quote

sorry but the error message from patch are typically due to a patch previously applied
Back to top
View user's profile Send private message
Juventus
n00b
n00b


Joined: 19 Sep 2005
Posts: 10

PostPosted: Tue Sep 20, 2005 12:29 pm    Post subject: Reply with quote

yes i figure out that i apply it twice becouse of this i get the FAILURE error.
What about compiling error?

Why i get error when compiling?
Back to top
View user's profile Send private message
Oliv
n00b
n00b


Joined: 17 Sep 2005
Posts: 35
Location: Montpellier (France)

PostPosted: Tue Sep 20, 2005 12:45 pm    Post subject: Reply with quote

I suppose that's due to this:
Code:
patching file include/linux/sysctl.h
Hunk #1 FAILED at 146.
1 out of 1 hunk FAILED -- saving rejects to file include/linux/sysctl.h.rej

so you'll have to edit include/linux/sysctl.h.rej file and see what have failed and then patch manually the file.
Back to top
View user's profile Send private message
Juventus
n00b
n00b


Joined: 19 Sep 2005
Posts: 10

PostPosted: Wed Sep 21, 2005 1:21 pm    Post subject: Reply with quote

i look in this fail but i don't know whow to fix the problem in line 145! I try everything but i don't know how to fix it!

Can someone help me?
Back to top
View user's profile Send private message
Oliv
n00b
n00b


Joined: 17 Sep 2005
Posts: 35
Location: Montpellier (France)

PostPosted: Wed Sep 21, 2005 2:04 pm    Post subject: Reply with quote

Well if you don't post the .rej file, no one will be able to help you.
Back to top
View user's profile Send private message
Juventus
n00b
n00b


Joined: 19 Sep 2005
Posts: 10

PostPosted: Wed Sep 21, 2005 3:14 pm    Post subject: Reply with quote

ok no problem

this is fbcmap.c.rej
Code:

fbcmap.c.rej

***************
*** 235,248 ****
           if (transp)
              htransp = *transp++;
           if (info->fbops->fb_setcolreg(start++,
-                         hred, hgreen, hblue,
                          htransp, info))
              break;
        }
     }
-    if (rc == 0)
        fb_copy_cmap(cmap, &info->cmap);
-
     return rc;
  }
 
--- 236,252 ----
           if (transp)
              htransp = *transp++;
           if (info->fbops->fb_setcolreg(start++,
+                         hred, hgreen, hblue,
                          htransp, info))
              break;
        }
     }
+    if (rc == 0) {
        fb_copy_cmap(cmap, &info->cmap);
+       if (fbsplash_active(info, vc_cons[fg_console].d) &&
+           info->fix.visual == FB_VISUAL_DIRECTCOLOR)
+          fbsplash_fix_pseudo_pal(info, vc_cons[fg_console].d);
+    }
     return rc;
  }
 
***************
*** 250,256 ****
  {
     int rc, size = cmap->len * sizeof(u16);
     struct fb_cmap umap;
-
     if (cmap->start < 0 || (!info->fbops->fb_setcolreg &&
                   !info->fbops->fb_setcmap))
        return -EINVAL;
--- 254,260 ----
  {
     int rc, size = cmap->len * sizeof(u16);
     struct fb_cmap umap;
+    
     if (cmap->start < 0 || (!info->fbops->fb_setcolreg &&
                   !info->fbops->fb_setcmap))
        return -EINVAL;



and this is sysctl.h.rej
Code:

sysctl.h.rej

***************
*** 146,151 ****
     KERN_RANDOMIZE=68, /* int: randomize virtual address space */
     KERN_SETUID_DUMPABLE=69, /* int: behaviour of dumps for setuid core */
     KERN_SPIN_RETRY=70,   /* int: number of spinlock retries */
  };
 
 
--- 146,152 ----
     KERN_RANDOMIZE=68, /* int: randomize virtual address space */
     KERN_SETUID_DUMPABLE=69, /* int: behaviour of dumps for setuid core */
     KERN_SPIN_RETRY=70,   /* int: number of spinlock retries */
+    KERN_FBSPLASH=71,   /* string: path to fbsplash helper */
  };
 


what must i do now that fbslash will be compiled!
Back to top
View user's profile Send private message
Oliv
n00b
n00b


Joined: 17 Sep 2005
Posts: 35
Location: Montpellier (France)

PostPosted: Wed Sep 21, 2005 3:49 pm    Post subject: Reply with quote

for sysctl.h:
-open sysctl.h and do a search on "KERN_SPIN_RETRY" pattern...
-when you find the line "KERN_SPIN_RETRY=70" add a new line after it:
Code:
KERN_FBSPLASH=71,   /* string: path to fbsplash helper */


for fbcmap.c:
-do nearly the same... I mean, find the line:
Code:

if (rc == 0) {
        fb_copy_cmap(cmap, &info->cmap);

and add in this "if" statement, the following one:
Code:
if (fbsplash_active(info, vc_cons[fg_console].d) &&
           info->fix.visual == FB_VISUAL_DIRECTCOLOR)
          fbsplash_fix_pseudo_pal(info, vc_cons[fg_console].d);


then do a make clean and retry compilation
Back to top
View user's profile Send private message
Juventus
n00b
n00b


Joined: 19 Sep 2005
Posts: 10

PostPosted: Wed Sep 21, 2005 5:36 pm    Post subject: Reply with quote

i can't find any f this lines you enetered here.
Can i just eneter this lines in the file becouse i can't find
Code:

KERN_SPIN_RETRY
or
if (rc == 0) {
        fb_copy_cmap(cmap, &info->cmap);


i just found
Code:

fb_copy_cmap(fb_default_cmap(len), cmap);
Back to top
View user's profile Send private message
Oliv
n00b
n00b


Joined: 17 Sep 2005
Posts: 35
Location: Montpellier (France)

PostPosted: Wed Sep 21, 2005 5:47 pm    Post subject: Reply with quote

Well for sysctl.h... you have an enum struct and the style of the enum struct is:
KERN_SOMETHING=number
go at the end of this enum and add your case (be carefull that 71 number is not used)

For the other case... You can try to add it after (not sure as I don't have seen the code)
Back to top
View user's profile Send private message
Juventus
n00b
n00b


Joined: 19 Sep 2005
Posts: 10

PostPosted: Wed Sep 21, 2005 6:16 pm    Post subject: Reply with quote

now i get this when compiling
Code:

drivers/video/fbcmap.c: In function `fb_alloc_cmap':
drivers/video/fbcmap.c:116: error: `info' undeclared (first use in this function)
drivers/video/fbcmap.c:116: error: (Each undeclared identifier is reported only once
drivers/video/fbcmap.c:116: error: for each function it appears in.)
make[2]: *** [drivers/video/fbcmap.o] Error 1
make[1]: *** [drivers/video] Error 2


fbcmap.ci is like this
Code:

int fb_alloc_cmap(struct fb_cmap *cmap, int len, int transp)
{
    int size = len*sizeof(u16);

    if (cmap->len != len) {
        fb_dealloc_cmap(cmap);
        if (!len)
            return 0;
        if (!(cmap->red = kmalloc(size, GFP_ATOMIC)))
            goto fail;
        if (!(cmap->green = kmalloc(size, GFP_ATOMIC)))
            goto fail;
        if (!(cmap->blue = kmalloc(size, GFP_ATOMIC)))
            goto fail;
        if (transp) {
            if (!(cmap->transp = kmalloc(size, GFP_ATOMIC)))
                goto fail;
        } else
            cmap->transp = NULL;
    }
    cmap->start = 0;
    cmap->len = len;
    fb_copy_cmap(fb_default_cmap(len), cmap);
 

       if (fbsplash_active(info, vc_cons[fg_console].d) && info->fix.visual == FB_VISUAL_DIRECTCOLOR)
          fbsplash_fix_pseudo_pal(info, vc_cons[fg_console].d);


return 0;


i think that i must add this
Code:

  if (fbsplash_active(info, vc_cons[fg_console].d) &&
            info->fix.visual == FB_VISUAL_DIRECTCOLOR)
           fbsplash_fix_pseudo_pal(info, vc_cons[fg_console].d);



into this but don't know where!
Code:

int fb_set_cmap(struct fb_cmap *cmap, struct fb_info *info)
{
   int i, start;
   u16 *red, *green, *blue, *transp;
   u_int hred, hgreen, hblue, htransp = 0xffff;

   red = cmap->red;
   green = cmap->green;
   blue = cmap->blue;
   transp = cmap->transp;
   start = cmap->start;

   if (start < 0 || (!info->fbops->fb_setcolreg &&
           !info->fbops->fb_setcmap))
      return -EINVAL;
   if (info->fbops->fb_setcmap)
      return info->fbops->fb_setcmap(cmap, info);
   for (i = 0; i < cmap->len; i++) {
      hred = *red++;
      hgreen = *green++;
      hblue = *blue++;
      if (transp)
         htransp = *transp++;
      if (info->fbops->fb_setcolreg(start++,
                     hred, hgreen, hblue, htransp,
                     info))
         break;
   }
   return 0;
}
Back to top
View user's profile Send private message
Oliv
n00b
n00b


Joined: 17 Sep 2005
Posts: 35
Location: Montpellier (France)

PostPosted: Wed Sep 21, 2005 7:02 pm    Post subject: Reply with quote

Yes you are right, you have to add your patch code in "fb_set_cmap" function ;)
Have a look at my kernel sources, and think you can put it after for loop... I mean:
Code:
for (i = 0; i < cmap->len; i++) {
      hred = *red++;
      hgreen = *green++;
      hblue = *blue++;
      if (transp)
         htransp = *transp++;
      if (info->fbops->fb_setcolreg(start++,
                     hred, hgreen, hblue, htransp,
                     info))
         break;
   }
if (fbsplash_active(info, vc_cons[fg_console].d) &&
            info->fix.visual == FB_VISUAL_DIRECTCOLOR)
           fbsplash_fix_pseudo_pal(info, vc_cons[fg_console].d);
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum