From owner-p4-projects@FreeBSD.ORG Mon May 8 05:13:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 072C616A406; Mon, 8 May 2006 05:13:41 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B788D16A401 for ; Mon, 8 May 2006 05:13:40 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6D6BD43D53 for ; Mon, 8 May 2006 05:13:40 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k485Deoj010065 for ; Mon, 8 May 2006 05:13:40 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k485Dek7010059 for perforce@freebsd.org; Mon, 8 May 2006 05:13:40 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 8 May 2006 05:13:40 GMT Message-Id: <200605080513.k485Dek7010059@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 96814 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 May 2006 05:13:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=96814 Change 96814 by kmacy@kmacy_storage:sun4v_rwbuf on 2006/05/08 05:13:01 make sendsig more consistent with sparc64 Affected files ... .. //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/machdep.c#22 edit Differences ... ==== //depot/projects/kmacy_sun4v/src/sys/sun4v/sun4v/machdep.c#22 (text+ko) ==== @@ -228,8 +228,6 @@ #ifdef notyet cpu_identify(rdpr(ver), tick_freq, PCPU_GET(cpuid)); -#else - printf("\tUltraSparc T1\n"); #endif } @@ -336,6 +334,9 @@ cninit(); tick_init(clock); + printf("cpu0: UltraSparc T1 Processor (%d.%02d MHz CPU)\n", + (clock + 4999) / 1000000, ((clock + 4999) / 10000) % 100); + /* * Panic is there is no metadata. Most likely the kernel was booted * directly, instead of through loader(8). @@ -521,12 +522,24 @@ /* Build the argument list for the signal handler. */ tf->tf_out[0] = sig; - tf->tf_out[1] = (register_t)&sfp->sf_si; tf->tf_out[2] = (register_t)&sfp->sf_uc; tf->tf_out[4] = (register_t)catcher; + /* Fill siginfo structure. */ sf.sf_si = ksi->ksi_info; sf.sf_si.si_addr = (void *)tf->tf_tpc; + if (SIGISMEMBER(psp->ps_siginfo, sig)) { + /* Signal handler installed with SA_SIGINFO. */ + tf->tf_out[1] = (register_t)&sfp->sf_si; + + /* Fill in POSIX parts. */ + sf.sf_si = ksi->ksi_info; + sf.sf_si.si_signo = sig; /* maybe a translated signal */ + } else { + /* Old FreeBSD-style arguments. */ + tf->tf_out[1] = ksi->ksi_code; + tf->tf_out[3] = (register_t)ksi->ksi_addr; + } /* Copy the sigframe out to the user's stack. */ if (rwindow_save(td) != 0 || copyout(&sf, sfp, sizeof(*sfp)) != 0 ||