diff options
| author | Jerry Jelinek <jerry.jelinek@joyent.com> | 2015-04-07 12:09:02 +0000 |
|---|---|---|
| committer | Jerry Jelinek <jerry.jelinek@joyent.com> | 2015-04-07 12:09:02 +0000 |
| commit | 9878d862e3fea77f1e5e392a799e8f760b6adbfe (patch) | |
| tree | 4e7e2e5060f05044aedc4acf27df031c7d40f3b2 /usr/src/tools/ctf | |
| parent | e48403a3a2fe85a2029e5e2143e2f27ba7efbdf5 (diff) | |
| parent | be3e2ab906b80af79c7b22885f279e45ad8fb995 (diff) | |
| download | illumos-joyent-9878d862e3fea77f1e5e392a799e8f760b6adbfe.tar.gz | |
[illumos-gate merge]
commit be3e2ab906b80af79c7b22885f279e45ad8fb995
5766 Avoid 128K kmem allocations in mzap_upgrade()
commit 20a95fb2c4af266e063e0cf86037f910a303c710
5768 zfsctl_snapshot_inactive() can leak a vnode hold
commit 309d9ad9da46080f1b86b839b1c868d8769899c0
5772 isxdigit_l, iswxdigit_l not exported (missing from mapfile)
commit 61a52ead5b18fada129835d3958519853b5e74ba
5710 iswblank_l missing from headers
commit 105958d7eca6f896fb8caab1f9777157eb0a352c
5773 Extra pointless steps in kernel module builds
commit 78d7e9613776b02098bc0b12fc9b9652b788b605
5564 arcstat does not work after 5497
commit de572d98af8238405c5d1292a788b1a85b0c68eb
5293 desire symbol visibility test
commit 8c76e0763bcf0029556e106377da859f6492a7ee
5769 Cast 'zfs bad bloc' to ULL for x86
Conflicts:
usr/src/tools/ctf/Makefile
usr/src/test/libc-tests/tests/Makefile
usr/src/test/libc-tests/runfiles/default.run
usr/src/pkg/manifests/system-test-libctest.mf
Diffstat (limited to 'usr/src/tools/ctf')
| -rw-r--r-- | usr/src/tools/ctf/Makefile | 2 | ||||
| -rw-r--r-- | usr/src/tools/ctf/scripts/Makefile | 47 | ||||
| -rw-r--r-- | usr/src/tools/ctf/scripts/ctfcvtptbl.pl | 222 | ||||
| -rw-r--r-- | usr/src/tools/ctf/scripts/ctffindmod.sh | 171 |
4 files changed, 1 insertions, 441 deletions
diff --git a/usr/src/tools/ctf/Makefile b/usr/src/tools/ctf/Makefile index 938b242fe9..9d5ec2f099 100644 --- a/usr/src/tools/ctf/Makefile +++ b/usr/src/tools/ctf/Makefile @@ -26,7 +26,7 @@ include ../Makefile.tools -SUBDIRS = cvt stabs scripts ctfstrip libctf ctfdiff ctfmerge ctfdump +SUBDIRS = cvt dump stabs scripts ctfstrip libctf ctfdiff ctfmerge ctfdump .PARALLEL: $(SUBDIRS) diff --git a/usr/src/tools/ctf/scripts/Makefile b/usr/src/tools/ctf/scripts/Makefile deleted file mode 100644 index a4b30cf153..0000000000 --- a/usr/src/tools/ctf/scripts/Makefile +++ /dev/null @@ -1,47 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2002 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" - -include ../../Makefile.tools - -.KEEP_STATE: - -SHFILES= \ - ctffindmod - -PERLFILES= \ - ctfcvtptbl - -all: $(SHFILES) $(PERLFILES) - -install: all .WAIT $(ROOTONBLDSHFILES) $(ROOTONBLDPERLFILES) - -lint: - -clean: - $(RM) $(SHFILES) $(PERLFILES) - -include ../../Makefile.targ diff --git a/usr/src/tools/ctf/scripts/ctfcvtptbl.pl b/usr/src/tools/ctf/scripts/ctfcvtptbl.pl deleted file mode 100644 index cc2de05c3a..0000000000 --- a/usr/src/tools/ctf/scripts/ctfcvtptbl.pl +++ /dev/null @@ -1,222 +0,0 @@ -#!/bin/perl -w -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# ident "%Z%%M% %I% %E% SMI" -# -# Copyright 2002 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# ctfcvtptbl [-o outfile] patch-makeup-table -# -# Given a path to a patch makeup table, this script converts that table to -# machine-optimal format and deposits it in the file specified by the -o option -# or on stdout depending on whether or not -o is specified. -# -# The user-supplied patch makeup table is in the following format: -# -# # -# # comment -# # -# -# genunix_archive=/path/to/genunix/archive -# -# patch 100001-01 kureq 100002-01 -# usr/src/uts/sparc/sd/debug32/sd -# module2 -# -# patch 100003-08 -# module3 -# -# The machine-optimal format for the above looks like this: -# -# GENUNIX_ARCHIVE=/path/to/genunix/archive -# module1 100001-01 100002-01 -# module2 100001-01 100002-01 -# module3 100003-08 -# -# -# Macros and other time-savers: -# -# * $RELEASE and $MACH in the genunix archive path will be replaced by the -# values of the RELEASE and MACH environment variables, respectively, as -# set by the program calling this one. -# -# * BUILD, BUILD32, and BUILD64 will, when used in the path for the module, -# will be match as follows: -# -# BUILD debug32, debug64, obj32, obj64 -# BUILD32 debug32, obj32 -# BUILD64 debug64, obj64 -# -# * The presence of `usr/src' at the beginning of each module path will be -# assumed, and is not required to be specified. -# - -use strict; -use Getopt::Std; -use File::Basename; - -my $PROGNAME = basename($0); - -my $genunix_archive; -my %moddata; -my %typehash = ( - BUILD => [ "debug32", "debug64", "obj32", "obj64" ], - BUILD32 => [ "debug32", "obj32" ], - BUILD64 => [ "debug64", "obj64" ] -); - -my %opts; -my $err = 0; -$err = 1 unless getopts("ho:", \%opts); -if ($opts{"o"}) { - close(STDOUT); - open(STDOUT, ">" . $opts{"o"}) || do { - print STDERR "Couldn't open " . $opts{"o"} . ": $!\n"; - exit(1); - } -} -if ($opts{"h"}) { - &usage; - exit(2); -} - -if (@ARGV != 1) { - $err = 1; -} - -if ($err) { - &usage; - exit(2); -} - -$::table = $ARGV[0]; - -if (!open(TABLE, "<$::table")) { - print STDERR "Couldn't open $::table: $!\n"; - exit(1); -} - -if (!&read_table) { - exit(1); -} - -&sub_vars; - -&dump_table; - -exit(0); - -sub usage { - print STDERR "Usage: $PROGNAME [-o outfile] table\n"; -} - -sub read_table { - my $patchid = ""; - my $kureq = ""; - my $kuprev = ""; - - $genunix_archive = ""; - undef %moddata; - - while (<TABLE>) { - chop; - s/\#.*$//; # Strip comments - s/^\s+//; - - if (!$patchid && /^genunix_archive=(\S+)\s*$/) { - $genunix_archive = $1; - next; - } - - while ($_) { - if (s/^patch\s+(\d{6}-\d{2}) - (\s+ku(req|prev)\s+(\d{6}-\d{2}|fcs))?//x && - (!$_ || /^\s/)) { - $patchid = $1; - $kureq = (defined $4 ? $4 : "fcs"); - $kuprev = (defined $3 && $3 eq "prev" ? 1 : 0); - } elsif ($patchid && s/^(\S+)//) { - my $module = $1; - - if (($module =~ m:/genunix/:) && !$kuprev) { - &parseerror("No kuprev supplied " . - "for entry including genunix"); - } - - if (($module !~ m:^usr/src/:)) { - $module = "usr/src/" . $module; - } - - if (($module =~ - m:^(.*)\$(BUILD|BUILD32|BUILD64)(/.*)$:)) { - foreach my $type (@{$typehash{$2}}) { - $moddata{$1 . $type . $3} = - [$patchid, $kureq]; - } - } else { - $moddata{$module} = [$patchid, $kureq]; - } - } else { - &parseerror("Cannot parse table"); - } - - s/^\s+//; - } - } - - if (!$genunix_archive) { - print STDERR "No genunix_archive line in table\n"; - return (0); - } - - if (!%moddata) { - print STDERR "No module information read\n"; - return (0); - } - - return (1); -} - -sub parseerror { - my $msg = $_[0]; - - print STDERR "$msg at line $.\n"; - exit(1); -} - -sub sub_vars { - my $release = $ENV{"RELEASE"}; - my $mach = $ENV{"MACH"}; - - $genunix_archive =~ s/\$RELEASE/$release/ if defined $release; - $genunix_archive =~ s/\$MACH/$mach/ if defined $mach; -} - -sub dump_table { - print "GENUNIX_ARCHIVE=" . $genunix_archive . "\n"; - - foreach my $mod (sort keys %moddata) { - print join(" ", ($mod, @{$moddata{$mod}})) . "\n"; - } -} diff --git a/usr/src/tools/ctf/scripts/ctffindmod.sh b/usr/src/tools/ctf/scripts/ctffindmod.sh deleted file mode 100644 index 8f583371d9..0000000000 --- a/usr/src/tools/ctf/scripts/ctffindmod.sh +++ /dev/null @@ -1,171 +0,0 @@ -#!/usr/bin/ksh -p -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# ident "%Z%%M% %I% %E% SMI" -# -# Copyright 2006 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# Given a machine-optimal patch makeup table (see ctfcvtptbl), this program -# will allow the build process to determine the following: -# -# * The patch ID associated with a given module -# * The KU required by the patch associated with a given module -# * The patch ID and location of the genunix module preceding the genunix -# module currently being built. -# - -PROGNAME=$(basename "$0") - -usage() -{ - echo "Usage: $PROGNAME [-nr] [-o outfmt] [-b build_type] -t table" \ - "module_path" >&2 -} - -die() -{ - echo "$1" >&2 - exit 1 -} - -outfmt="patch,ku" -notfoundok=0 -relative=0 -build_type=debug32 -err=0 -while getopts b:lno:rt: c ; do - case $c in - b) - build_type="$OPTARG" - ;; - n) - notfoundok=1 - ;; - o) - outfmt="$OPTARG" - ;; - r) - relative=1 - ;; - t) - table="$OPTARG" - ;; - \?) - err=1 - ;; - esac -done -shift `expr $OPTIND - 1` - -if [[ $err -eq 1 || $# -ne 1 || -z "$table" ]] ; then - usage - exit 2 -fi - -print_garpath=0 -print_ku=0 -print_patch=0 -print_lastgu=0 -for word in $(echo "$outfmt" |tr ',' ' ') ; do - case $word in - garpath) - print_garpath=1 - ;; - ku) - print_ku=1 - ;; - lastgu) - print_lastgu=1 - ;; - patch) - print_patch=1 - ;; - \?) - usage - exit 2 - esac -done - -module="$1" -shift - -if [[ ! -f "$table" ]] ; then - die "$PROGNAME: Cannot open $table" -fi - -head -1 "$table" |sed -e 's/^\([^=]*\)=/\1 /' |read garkw garpath - -if [[ "$garkw" != "GENUNIX_ARCHIVE" || -z "$garpath" ]] ; then - die "$PROGNAME: $table is not a machine-optimal patch table" >&2 -fi - -if [[ $relative -eq 1 ]] ; then - crd=$(pwd |sed -e 's:^.*usr/src/uts::') - module=$(echo "$crd/$module" |sed -e 's://*:/:g') -fi - -fgrep "$module" "$table" |read junk patch ku - -if [[ -z "$patch" || - "$(expr "$patch" : '[0-9]\{6\}-[0-9][0-9]')" -ne 9 ]] ; then - if [[ "$notfoundok" -eq 1 ]] ; then - patch="-" - else - die "$PROGNAME: Cannot find patch for $module" >&2 - fi -fi - -if [[ -z "$ku" ]] ; then - ku="-" -fi - -# Output - -space="" -if [[ $print_patch -eq 1 ]] ; then - echo "$space$patch\c" - space=" " -fi -if [[ $print_ku -eq 1 ]] ; then - echo "$space$ku\c" - space=" " -fi -if [[ $print_garpath -eq 1 ]] ; then - echo "$space$garpath\c" - space=" " -fi -if [[ $print_lastgu -eq 1 ]] ; then - suffix= - if expr $build_type : '.*64' >/dev/null ; then - if [ `uname -p` = "sparc" ] ; then - suffix=/sparcv9 - else - suffix=/amd64 - fi - fi - echo "$space$garpath/$ku$suffix/genunix\c" - space=" " -fi -[[ -n "$space" ]] && echo - -return 0 |
