diff options
author | attilio <attilio@FreeBSD.org> | 2011-07-18 15:19:40 +0000 |
---|---|---|
committer | attilio <attilio@FreeBSD.org> | 2011-07-18 15:19:40 +0000 |
commit | 9a6ff5ad378cfaaa99c5162e2b0f6e4cb6a3c796 (patch) | |
tree | 3d2deee4220ced3fd75b40dbd48afd2ed84428f6 /sys/sparc64 | |
parent | 838b39dd924348287b3ed188b8a6b642390c9429 (diff) | |
download | FreeBSD-src-9a6ff5ad378cfaaa99c5162e2b0f6e4cb6a3c796.zip FreeBSD-src-9a6ff5ad378cfaaa99c5162e2b0f6e4cb6a3c796.tar.gz |
- Remove the eintrcnt/eintrnames usage and introduce the concept of
sintrcnt/sintrnames which are symbols containing the size of the 2
tables.
- For amd64/i386 remove the storage of intr* stuff from assembly files.
This area can be widely improved by applying the same to other
architectures and likely finding an unified approach among them and
move the whole code to be MI. More work in this area is expected to
happen fairly soon.
No MFC is previewed for this patch.
Tested by: pluknet
Reviewed by: jhb
Approved by: re (kib)
Diffstat (limited to 'sys/sparc64')
-rw-r--r-- | sys/sparc64/sparc64/exception.S | 11 | ||||
-rw-r--r-- | sys/sparc64/sparc64/intr_machdep.c | 2 |
2 files changed, 8 insertions, 5 deletions
diff --git a/sys/sparc64/sparc64/exception.S b/sys/sparc64/sparc64/exception.S index 5ef50a3..fa2f2d5 100644 --- a/sys/sparc64/sparc64/exception.S +++ b/sys/sparc64/sparc64/exception.S @@ -371,14 +371,17 @@ END(rsf_fatal) .data _ALIGN_DATA - .globl intrnames, eintrnames + .globl intrnames, sintrnames intrnames: .space IV_MAX * (MAXCOMLEN + 1) -eintrnames: - .globl intrcnt, eintrcnt +sintrnames: + .word IV_MAX * (MAXCOMLEN + 1) + + .globl intrcnt, sintrcnt intrcnt: .space IV_MAX * 8 -eintrcnt: +sintrcnt: + .word IV_MAX * 8 .text diff --git a/sys/sparc64/sparc64/intr_machdep.c b/sys/sparc64/sparc64/intr_machdep.c index 112ddab..9a7e92f 100644 --- a/sys/sparc64/sparc64/intr_machdep.c +++ b/sys/sparc64/sparc64/intr_machdep.c @@ -171,7 +171,7 @@ static int intrcnt_setname(const char *name, int index) { - if (intrnames + (MAXCOMLEN + 1) * index >= eintrnames) + if ((MAXCOMLEN + 1) * index >= sintrnames) return (E2BIG); snprintf(intrnames + (MAXCOMLEN + 1) * index, MAXCOMLEN + 1, "%-*s", MAXCOMLEN, name); |