Andy,

Your problem is that the __arch_strncpy_from_user symbol
is not being exported.  You will find __arch_strnlen_user
exported in the file /usr/src/linux/arch/arm/kernel/armksyms.c
but it looks like someone forgot __arch_strncpy_from_user.

Just apply the following little patch, recomile,  and that
should solve your problem.  Then, contribute the patch back
to the linux kernel.

--brian

--- arch/arm/kernel/armksyms.c  Wed May  8 00:42:22 2002
+++ arch/arm/kernel/armksyms.new.c      Wed Feb 12 11:42:10 2003
@@ -192,12 +192,13 @@
        /* user mem (segment) */
 #if defined(CONFIG_CPU_32)
 EXPORT_SYMBOL(__arch_copy_from_user);
 EXPORT_SYMBOL(__arch_copy_to_user);
 EXPORT_SYMBOL(__arch_clear_user);
 EXPORT_SYMBOL(__arch_strnlen_user);
+EXPORT_SYMBOL(__arch_strncpy_from_user);
 
        /* consistent area handling */
 EXPORT_SYMBOL(pci_alloc_consistent);
 EXPORT_SYMBOL(consistent_alloc);
 EXPORT_SYMBOL(consistent_free);
 EXPORT_SYMBOL(consistent_sync);


On Wed, 12 Feb 2003, Andy Winton wrote:

> Thanks again for all the replies.
> 
> The unresolved symbol __arch_strncpy_from_user is in the
> kernel file strncpy_from_user.S file which is linked into
> vmlinux file but on the ipaq this is cutdown to fraction
> of the size in the file zImage-2.4.19-rmk4-sa.
> 
> I'm guessing __arch_strncpy_from_user is not in the
> zImage file (but it seems to be a different format and
> I can't 'nm' it to see inside).
> 
> On the ipaq there is a script ipkg-make-kernel-packages
> which makes the small zImage and it also makes other
> packages (ipk files) for kernel loadable modules. (ipk files are like
> red hat rpms but for the ipaq)
> 
> Anyway, I just tried to copy over the strncpy_from_user.o
> file into the ipaq kernel module dir.  It did't like that. :-)
> So I'll try to either put this back into the kernel or
> link it into the streams.o file...
> 
> I'll keep you all posted as to how I get on...
> 
>   cheers & thanks for all the help so far,
> 
> andy
> 
> 
> 
> On Wed, 2003-02-12 at 17:42, John A. Boyd Jr. wrote:
> > I think you'll need to figure out where loadable modules
> > go; i.e., where a running kernel finds them.  On an x86,
> > they're in /lib/modules/<kernel version>/misc; for the
> > target you're working with, you may need to install them
> > somewhere (else).  insmod appears just to be telling you
> > that it can't find streams.o in order to load it.
> 
> The error is misleading, it can load it but is failing with
> unresolved symbols. (as mentioned by some other helpful person
> on this list)
> 
> > 
> > -John
> > 
> > Andy Winton wrote:
> > > hi,
> > > 
> > >   OK, so it looks like at startup the streams task makes the
> > >   /dev/loop_clone driver.  
> > > 
> > >   When I try to start I get -
> > > 
> > >   ~/progs # ./strms_up
> > >   Using streams
> > > 
> > >   And nothing more happens, looking inside the script 
> > >   and running on commmand line -
> > > 
> > >   ~/progs # modprobe -v -d streams
> > >   insmod    streams  2>/dev/null
> > >   Using streams
> > >   
> > >   Then trying insmod on the command line -
> > > 
> > >   ~/progs # insmod -v streams
> > >   Using streams
> > >   insmod: ELF file not a relocatable object
> > >   insmod: Could not load the module: No such file or directory
> > > 
> > >   however back on my linux host -
> > > 
> > >   [andy@pussy strmlib]$ file streams.o
> > >   streams.o: ELF 32-bit LSB relocatable, ARM, version 1 (ARM), not
> > > stripped
> > > 
> > >   Hmm, now I'm a bit confused streams.o is either relocatable or
> > >   not, linux host says it is, ipaq says it's not.
> > > 
> > >   Or is there something else going on here?
> > > 
> > >   any help would be appreciated,
> > > 
> > > andy
> > > 
> > > 
> > > 
> > > 
> > > _______________________________________________
> > > Linux-streams mailing list
> > > [EMAIL PROTECTED]
> > > http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams
> > > 
> > > .
> > > 
> > 
> > 
> > 
> 
> 
> 
> _______________________________________________
> Linux-streams mailing list
> [EMAIL PROTECTED]
> http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams

-- 
Brian F. G. Bidulock    � The reasonable man adapts himself to the �
[EMAIL PROTECTED]    � world; the unreasonable one persists in  �
http://www.openss7.org/ � trying  to adapt the  world  to himself. �
                        � Therefore  all  progress  depends on the �
                        � unreasonable man. -- George Bernard Shaw �

_______________________________________________
Linux-streams mailing list
[EMAIL PROTECTED]
http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams

Reply via email to