Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 May 2000 19:03:28 +0200
From:      Christian Weisgerber <naddy@unix-ag.uni-kl.de>
To:        freebsd-alpha@freebsd.org
Subject:   uac.c
Message-ID:  <20000525190328.A80312@fettuccini.unix-ag.uni-kl.de>

next in thread | raw e-mail | index | archive | help
I'm looking at uac.c, and there are some things I don't understand.

| #include <sys/types.h>
| #include <machine/sysarch.h>
| #include <machine/proc.h>

| extern int sysarch(int, char *);

Why isn't sysarch() declared in any header file?

| struct parms {
|         u_int64_t uac;
| };

| int
| alpha_setuac(u_int64_t uac)
| {
|         struct parms p;
| 
|         p.uac = uac;
|         return (sysarch(ALPHA_SET_UAC, (char *)&p));
| }

The use of a struct to pass a single 64-bit int seems bizarre.
Is this used to force proper alignment? (Since char* presumably
isn't guaranteed to be quadword-aligned.)

-- 
Christian "naddy" Weisgerber                     naddy@unix-ag.uni-kl.de


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000525190328.A80312>