lkml.org 
[lkml]   [1998]   [Nov]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: 2.1.126 still no sparc64 autofs
Date
> Hm, at least for Alpha and Intel sizeof(void*) == sizeof(long).
> Shouldn't this apply for sparc64, too?

Of course, it does apply. What people were speaking about is that
sizeof(long) in 32bit userland != sizeof(long) in 64bit kernel, that's all.
So, on sparc64:
kernel: sizeof(int) == 4 && sizeof(void *) == sizeof(long) == 8
userland64: sizeof(int) == 4 && sizeof(void *) == sizeof(long) == 8
userland32: sizeof(int) == sizeof(void *) == sizeof(long) == 4

The problem was that autofs used to pass a structure through a pipe and used
not some u32/u64 type (which has clear size), but unsigned long, so that
32bit autofs daemon would be confused by the structure passed by the kernel.
sparc64 kernel has a compatibility layer, which converts syscalls and
ioctls, but of course, there was nothing to convert the structure passed
over the pipe (it would be doable, but it was much easier when hpa kindly
changed that type on sparc* and mips).

Don't worry, things are not broken like you'd think.

Cheers,
Jakub
___________________________________________________________________
Jakub Jelinek | jj@sunsite.mff.cuni.cz | http://sunsite.mff.cuni.cz
Administrator of SunSITE Czech Republic, MFF, Charles University
___________________________________________________________________
Ultralinux - first 64bit OS to take full power of the UltraSparc
Linux version 2.1.128 on a sparc64 machine (498.80 BogoMips).
___________________________________________________________________

-
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:45    [W:0.058 / U:1.084 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site