Re: [reiserfs-dev] Re: [ANNOUNCE] reiser4 snaphots

2002-11-07 Thread Nikita Danilov
Todd Lyons writes:
 > Oleg O. Ossovitskii wanted us to know:
 > 
 > >BTW: is anywhere diff to apply Reiser4 to plain 2.5.x (not bk tree) or I have to 
 >made this
 > >manually (by hands)?
 > 
 > It applied for me to the 2.5.45 tree with only one reject, mm/swap.c.
 > It wants to add a #include, but what's there is not quite like what the
 > patch expects.  You'll actually have to add two lines, not just one.
 > 
 > Still compiling.  In the reiser4 code right nowwell, it built and
 > linked.  That's a good sign.
 > 
 > Here are the .config settings that I used:
 > CONFIG_REISER4_FS=m
 > CONFIG_REISER4_CHECK=y
 > CONFIG_REISER4_DEBUG=y
 > CONFIG_REISER4_CHECK_STACK=y
 > CONFIG_REISER4_DEBUG_MODIFY=y
 > CONFIG_REISER4_DEBUG_MEMCPY=y
 > CONFIG_REISER4_DEBUG_NODE=y
 > CONFIG_REISER4_ZERO_NEW_NODE=y
 > CONFIG_REISER4_TRACE=y
 > CONFIG_REISER4_STATS=y
 > CONFIG_REISER4_DEBUG_OUTPUT=y
 > # CONFIG_REISER4_NOOPT is not set
 > 
 > Curious if anybody feels that I should have chosen different values for
 > any of the options.

Reasonable options for debugging. Will result in dead-slow reiser4 though.

Once you stop being able to tolerate it slowness, disable
CONFIG_REISER4_DEBUG_MODIFY and CONFIG_REISER4_CHECK_STACK.

 > -- 
 > Blue skies...Todd
 > | Get a bigger hammer!   |  Normal?  Normal is a setting on   |
 > | http://www.mrball.net  |  my dryer. |
 > | http://faq.mrball.net  | BayCon 2001 http://www.baycon.org  |
 >Linux kernel 2.5.45   1 user,  load average: 1.19, 0.88, 0.40

Nikita.



Re: [reiserfs-dev] Re: [ANNOUNCE] reiser4 snaphots

2002-11-08 Thread Todd Lyons
Nikita Danilov wanted us to know:

> > Still compiling.  In the reiser4 code right nowwell, it built and
> > linked.  That's a good sign.

It compiled and installed, but it doesn't load:

[root@trip ~]# modprobe reiser4
/lib/modules/2.5.45-3/kernel/fs/reiser4/reiser4.o: unresolved symbol
page_states__per_cpu
modprobe: insmod /lib/modules/2.5.45-3/kernel/fs/reiser4/reiser4.o failed
modprobe: insmod reiser4 failed

> > Curious if anybody feels that I should have chosen different values for
> > any of the options.
>Reasonable options for debugging. Will result in dead-slow reiser4 though.

Ok, will remove the debugging options.  In the meantime, gotta figure
out why it's got that unresolved symbol.
-- 
Blue skies...   Todd   http://www.mrball.net
   Public key:  http://www.mrball.net/todd.asc
 Development is like evolution and there is no turning back.
   Linux kernel 2.5.45-3   1 user,  load average: 0.00, 0.00, 0.00



msg06849/pgp0.pgp
Description: PGP signature


Re: [reiserfs-dev] Re: [ANNOUNCE] reiser4 snaphots

2002-11-08 Thread Nikita Danilov
Todd Lyons writes:
 > Nikita Danilov wanted us to know:
 > 
 > > > Still compiling.  In the reiser4 code right nowwell, it built and
 > > > linked.  That's a good sign.
 > 
 > It compiled and installed, but it doesn't load:
 > 
 > [root@trip ~]# modprobe reiser4
 > /lib/modules/2.5.45-3/kernel/fs/reiser4/reiser4.o: unresolved symbol
 > page_states__per_cpu
 > modprobe: insmod /lib/modules/2.5.45-3/kernel/fs/reiser4/reiser4.o failed
 > modprobe: insmod reiser4 failed
 > 
 > > > Curious if anybody feels that I should have chosen different values for
 > > > any of the options.
 > >Reasonable options for debugging. Will result in dead-slow reiser4 though.
 > 
 > Ok, will remove the debugging options.  In the meantime, gotta figure
 > out why it's got that unresolved symbol.

This is bug in the handling of per-cpu variables. Andrew Morton and
Rusty Russell posted patches to fix it. Here is one:
--
diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff \
--minimal linux-2.5.45/include/asm-generic/percpu.h \
working-2.5.45-tmp/include/asm-generic/percpu.h
--- linux-2.5.45/include/asm-generic/percpu.h   2002-10-31 12:36:56.0 +1100
+++ working-2.5.45-tmp/include/asm-generic/percpu.h 2002-11-02 09:20:06.0 \
+1100 @@ -35,4 +35,10 @@ extern unsigned long __per_cpu_offset[NR
 #define EXPORT_PER_CPU_SYMBOL(var) EXPORT_SYMBOL(var##__per_cpu)
 #define EXPORT_PER_CPU_SYMBOL_GPL(var) EXPORT_SYMBOL_GPL(var##__per_cpu)
 
+/* Genksyms can't follow the percpu declaration.  Give it a fake one. */
+#ifdef __GENKSYMS__
+#undef DEFINE_PER_CPU
+#define DEFINE_PER_CPU(type, name) type name##__per_cpu
+#endif /*__GENKSYMS__*/
+
 #endif /* _ASM_GENERIC_PERCPU_H_ */
--

Please let me know whether this helps.

Alternatively, you can compile reiser4 as built-in (not module), or
disable module versioning.

Nikita.



Re: [reiserfs-dev] Re: [ANNOUNCE] reiser4 snaphots

2002-11-08 Thread Todd Lyons
Nikita Danilov wanted us to know:

> > [root@trip ~]# modprobe reiser4
> > /lib/modules/2.5.45-3/kernel/fs/reiser4/reiser4.o: unresolved symbol
> > page_states__per_cpu
>This is bug in the handling of per-cpu variables. Andrew Morton and
>Rusty Russell posted patches to fix it. Here is one:
>Please let me know whether this helps.

Yes, it fixed it.  

Maybe my understanding is a little off, but I thought that I could just
rebuild the modules and install them and run depmod and the new module
symbols would be in effect.  But that didn't work (same error).

So then I tried also a make bzImage and make install (which updates the
System.map, something that didn't get done with make modules_install).
It still would not load (same error).

Finally, I rebooted loading the new kernel and that fixed it.  No
comments needed, unless they are "what you did should have worked."

>Alternatively, you can compile reiser4 as built-in (not module), or

Much prefer modules for everything.  Kinda spoiled by the ability to
change configurations on the fly.

>disable module versioning.

Something to think about...
-- 
Blue skies...   Todd
| Get a bigger hammer!   |  ...file transfer by email is evil.|
| http://www.mrball.net  |  NANOG |
| http://faq.mrball.net  ||
   Linux kernel 2.5.45-3   load average: 0.24, 0.21, 0.09



msg06851/pgp0.pgp
Description: PGP signature


Re: [reiserfs-dev] Re: [ANNOUNCE] reiser4 snaphots

2002-11-08 Thread Valdis . Kletnieks
On Fri, 08 Nov 2002 11:49:48 PST, Todd Lyons said:

> Maybe my understanding is a little off, but I thought that I could just
> rebuild the modules and install them and run depmod and the new module
> symbols would be in effect.  But that didn't work (same error).
> 
> So then I tried also a make bzImage and make install (which updates the
> System.map, something that didn't get done with make modules_install).
> It still would not load (same error).
> 
> Finally, I rebooted loading the new kernel and that fixed it.  No
> comments needed, unless they are "what you did should have worked."

I've seen similar issues when the /boot/System.map file doesn't match the
kernel in use (this is particularly an issue for 'depmod' - the standard
'make modules_install' target passes a -F flag to depmod to use the just-created
System.map file.
-- 
Valdis Kletnieks
Computer Systems Senior Engineer
Virginia Tech




msg06852/pgp0.pgp
Description: PGP signature


Re: [reiserfs-dev] Re: [ANNOUNCE] reiser4 snaphots

2002-11-08 Thread Todd Lyons
[EMAIL PROTECTED] wanted us to know:
>> Todd Lyons wrote:
>> Maybe my understanding is a little off, but I thought that I could
>> just rebuild the modules and install them and run depmod and the new
>> module symbols would be in effect.  But that didn't work (same
>> error).
>> So then I tried also a make bzImage and make install (which updates the
>> System.map, something that didn't get done with make modules_install).
>> It still would not load (same error).
>> Finally, I rebooted loading the new kernel and that fixed it.  No
>> comments needed, unless they are "what you did should have worked."
>I've seen similar issues when the /boot/System.map file doesn't match
>the kernel in use (this is particularly an issue for 'depmod' - the
>standard 'make modules_install' target passes a -F flag to depmod to
>use the just-created System.map file.

That I get.  You're saying that my make install step which updated the
System.map in /boot was nullfied because it didn't exactly match the
running kernel version.  And you're also saying that -F makes it ignore
what /proc/ksyms has.

But then that leads to the next problem.  That System.map doesn't match
the /proc/ksyms, so I'm still left with a reboot as my only option.  

Thinking out loud.  But I didn't change the way that the kernel was
compiled.  Reiser4 is _still_ a module.  What am I missing?

Blue skies...   Todd

P.S. Valdis, I think this sig originally came from somebody's NANOG
post.  :)
-- 
A: No
Q: Should I quote at the end of the message?
   Linux kernel 2.5.45-3   load average: 0.00, 0.00, 0.00



msg06853/pgp0.pgp
Description: PGP signature


Re: [reiserfs-dev] Re: [ANNOUNCE] reiser4 snaphots

2002-11-08 Thread Dieter Nützel
Am Freitag, 8. November 2002 21:39 schrieb Todd Lyons:
> [EMAIL PROTECTED] wanted us to know:
> >> Todd Lyons wrote:
> >> Maybe my understanding is a little off, but I thought that I could
> >> just rebuild the modules and install them and run depmod and the new
> >> module symbols would be in effect.  But that didn't work (same
> >> error).
> >> So then I tried also a make bzImage and make install (which updates the
> >> System.map, something that didn't get done with make modules_install).
> >> It still would not load (same error).
> >> Finally, I rebooted loading the new kernel and that fixed it.  No
> >> comments needed, unless they are "what you did should have worked."
> >
> >I've seen similar issues when the /boot/System.map file doesn't match
> >the kernel in use (this is particularly an issue for 'depmod' - the
> >standard 'make modules_install' target passes a -F flag to depmod to
> >use the just-created System.map file.
>
> That I get.  You're saying that my make install step which updated the
> System.map in /boot was nullfied because it didn't exactly match the
> running kernel version.  And you're also saying that -F makes it ignore
> what /proc/ksyms has.
>
> But then that leads to the next problem.  That System.map doesn't match
> the /proc/ksyms, so I'm still left with a reboot as my only option.

That's normal for all kernel developers.
If you build a new kernel with new symbols some stuff couldn't match until you 
have rebooted.

> Thinking out loud.  But I didn't change the way that the kernel was
> compiled.  Reiser4 is _still_ a module.  What am I missing?

Are you sure?

-Dieter