lkml.org 
[lkml]   [2000]   [Mar]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: ADFS -> undefined reference to __cmpdi2 (2.3.51)
On Sat, 11 Mar 2000, Alexander Viro wrote:

> > Arjan van de Ven writes:
> > > The ADFS filesystem doesn't compile for me, it leaves undefined references
> > > to __cmpdi2.

> > Is your GCC environment missing something?
>
> Yes. switch(long_long_var) is _not_ a primitive. And libgcc.a is out of
> question in the kernel. Assuming that you don't have 64-bit offsets in
> directories - switch((unsigned long)(long_long_var)) may be a good idea.

So would the following patch be appropriate?
(The BUG() part should probably be replaced with "return -ESOMEERROR",
I would not know which one though)

Greetings,
Arjan van de Ven

--- linux/fs/adfs/dir.c.org Sat Mar 11 10:49:54 2000
+++ linux/fs/adfs/dir.c Sat Mar 11 16:16:26 2000
@@ -38,8 +38,11 @@
ret = ops->read(sb, inode->i_ino, inode->i_size, &dir);
if (ret)
goto out;
+
+ if ((filp->f_pos>>32)!=0)
+ BUG();

- switch (filp->f_pos) {
+ switch ((unsigned int)filp->f_pos) {
case 0:
if (filldir(dirent, ".", 1, 0, inode->i_ino) < 0)
goto free_out;

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:57    [from the cache]
©2003-2011 Jasper Spaans