"fast data access mmu miss" on kernels w/o "makeoptions
DEBUG=-g"
R. Imura
imura at ryu16.org
Wed Aug 24 14:39:56 GMT 2005
Hi,
On Wed, Aug 24, 2005 at 10:01:47AM +0900, Pyun YongHyeon wrote:
> On Tue, Aug 23, 2005 at 09:11:17AM -0400, John Nielsen wrote:
> > On Tuesday 23 August 2005 04:15, Pyun YongHyeon wrote:
> > > It seems that iconv needs default KOBJMETHOD for ICONV_CONVERTER_NAME.
> > > With attached patch I can boot my system with LIBICONV.
> > > John Nielsen, would you please let me know how the attached patch goes
> > > on your system?
> >
> > My system already boots fine with LIBICONV, although I haven't tried
>
> Then it seems that you are seeing differnet issues not known to me.
> Would you please post stack trace?
>
> > mounting and SMB FS yet.
> >
>
> smbfs does not work on sparc64 as smbfs assumes it runs on
> architectures that allow on-aligned memory access. It also needs
> big-endian clean up too.(See sys/mchain.h)
To begin with, you might want this patch. :)
Index: sys/sys/mchain.h
===================================================================
RCS file: /home/ncvs/src/sys/sys/mchain.h,v
retrieving revision 1.9
diff -u -r1.9 mchain.h
--- sys/sys/mchain.h 29 Jul 2005 13:22:36 -0000 1.9
+++ sys/sys/mchain.h 24 Aug 2005 10:55:39 -0000
@@ -42,42 +42,36 @@
*/
#if (BYTE_ORDER == LITTLE_ENDIAN)
-#define htoles(x) ((u_int16_t)(x))
-#define letohs(x) ((u_int16_t)(x))
-#define htolel(x) ((u_int32_t)(x))
-#define letohl(x) ((u_int32_t)(x))
-#define htoleq(x) ((int64_t)(x))
-#define letohq(x) ((int64_t)(x))
-
-#define htobes(x) (__htons(x))
-#define betohs(x) (__ntohs(x))
-#define htobel(x) (__htonl(x))
-#define betohl(x) (__ntohl(x))
-
-static __inline int64_t
-htobeq(int64_t x)
-{
- return (int64_t)__htonl((u_int32_t)(x >> 32)) |
- (int64_t)__htonl((u_int32_t)(x & 0xffffffff)) << 32;
-}
-
-static __inline int64_t
-betohq(int64_t x)
-{
- return (int64_t)__ntohl((u_int32_t)(x >> 32)) |
- (int64_t)__ntohl((u_int32_t)(x & 0xffffffff)) << 32;
-}
+#define htoles(x) ((uint16_t)(x))
+#define letohs(x) ((uint16_t)(x))
+#define htolel(x) ((uint32_t)(x))
+#define letohl(x) ((uint32_t)(x))
+#define htoleq(x) ((uint64_t)(x))
+#define letohq(x) ((uint64_t)(x))
+
+#define htobes(x) (bswap16(x))
+#define betohs(x) (bswap16(x))
+#define htobel(x) (bswap32(x))
+#define betohl(x) (bswap32(x))
+#define htobeq(x) (bswap64(x))
+#define betohq(x) (bswap64(x))
#else /* (BYTE_ORDER == LITTLE_ENDIAN) */
-#error "Macros for Big-Endians are incomplete"
+#define htoles(x) (bswap16(x))
+#define letohs(x) (bswap16(x))
+#define htolel(x) (bswap32(x))
+#define letohl(x) (bswap32(x))
+#define htoleq(x) (bswap64(x))
+#define letohq(x) (bswap64(x))
+
+#define htobes(x) ((uint16_t)(x))
+#define betohs(x) ((uint16_t)(x))
+#define htobel(x) ((uint32_t)(x))
+#define betohl(x) ((uint32_t)(x))
+#define htobeq(x) ((uint64_t)(x))
+#define betohq(x) ((uint64_t)(x))
-/*
-#define htoles(x) ((u_int16_t)(x))
-#define letohs(x) ((u_int16_t)(x))
-#define htolel(x) ((u_int32_t)(x))
-#define letohl(x) ((u_int32_t)(x))
-*/
#endif /* (BYTE_ORDER == LITTLE_ENDIAN) */
#endif /* _KERNEL */
Regards,
- R. Imura
More information about the freebsd-sparc64
mailing list