From owner-svn-src-all@FreeBSD.ORG Sun Aug 25 06:56:48 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 004ACD86; Sun, 25 Aug 2013 06:56:47 +0000 (UTC) (envelope-from hiren.panchasara@gmail.com) Received: from mail-ea0-x22a.google.com (mail-ea0-x22a.google.com [IPv6:2a00:1450:4013:c01::22a]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id EF4382C1D; Sun, 25 Aug 2013 06:56:46 +0000 (UTC) Received: by mail-ea0-f170.google.com with SMTP id h14so1026941eak.1 for ; Sat, 24 Aug 2013 23:56:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=TqNAPWYQ/ejQMvPdbBitYKeKoHEwKU8R73MXSmI4M8o=; b=HswZyybm3vgSzIF/1hrQIM3Zc3MaSB71hFpO+tNCUzIlsAzz6+LjsKmOX7Iouosa7e +J/tuuRufTF3W2H3UKrbRDSZXwmeRPi5+bZfNTnGn/FdWspzJioKMapNZvzGUXi45XoI EafQuFyMMCIFna/0kNQ0koVS1TaUO3RXNyBe2Q9iQyeFmBPaMAAidCmChSScvHLO0Xqy d+JHhbHWYuzr8BNyMBo/ca6qiuJ03kFZTBpdcQnYsdh/dW2zcRUe4I6WTPLOAP52Okwo yXz5F65msxN4EDiceJpQf4gE9WepmZJXiz96VRoFJTZtZs2RwZimt3nuP0Eucb9Vdejx r1YQ== MIME-Version: 1.0 X-Received: by 10.14.1.131 with SMTP id 3mr833656eed.57.1377413804660; Sat, 24 Aug 2013 23:56:44 -0700 (PDT) Sender: hiren.panchasara@gmail.com Received: by 10.14.105.137 with HTTP; Sat, 24 Aug 2013 23:56:44 -0700 (PDT) In-Reply-To: <201308250207.r7P27SE3033192@svn.freebsd.org> References: <201308250207.r7P27SE3033192@svn.freebsd.org> Date: Sat, 24 Aug 2013 23:56:44 -0700 X-Google-Sender-Auth: -3Q0TOIzoHKKqIXAQgPpYsj10NU Message-ID: Subject: Re: svn commit: r254824 - head/sys/dev/hwpmc From: hiren panchasara To: Adrian Chadd Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.14 Cc: svn-src-head , svn-src-all , src-committers X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 25 Aug 2013 06:56:48 -0000 On Sat, Aug 24, 2013 at 7:07 PM, Adrian Chadd wrote: > Author: adrian > Date: Sun Aug 25 02:07:28 2013 > New Revision: 254824 > URL: http://svnweb.freebsd.org/changeset/base/254824 > > Log: > Update the MEM_UOP_RETIRED PMC operation for sandy bridge and sandy > bridge Xeon. > > Summary: These are PEBS events but they're also available as normal > counter/sample events. The source table (Table 19-2) lists the > base versions (LOAD, STLB_MISS, SPLIT, ALL) but it says they must > be qualified with other values. This particular commit fleshes > out those umask values. > > Source: > > * Linux; SDM June 2013, Volume 3B, Table 19-2 and 18-21. > > Tested: > > * Sandy Bridge (non-Xeon) > > Modified: > head/sys/dev/hwpmc/hwpmc_core.c > head/sys/dev/hwpmc/pmc_events.h > > Modified: head/sys/dev/hwpmc/hwpmc_core.c > > ============================================================================== > --- head/sys/dev/hwpmc/hwpmc_core.c Sun Aug 25 01:55:14 2013 > (r254823) > +++ head/sys/dev/hwpmc/hwpmc_core.c Sun Aug 25 02:07:28 2013 > (r254824) > @@ -1514,19 +1514,21 @@ static struct iap_event_descr iap_events > IAPDESCR(CEH_00H, 0xCE, 0x00, IAP_F_FM | IAP_F_ALLCPUSCORE2), > IAPDESCR(CFH_00H, 0xCF, 0x00, IAP_F_FM | IAP_F_CA | IAP_F_CC2), > > + /* Sandy Bridge / Sandy Bridge Xeon - 11, 12, 21, 41, 42, 81, 82 */ > IAPDESCR(D0H_00H, 0xD0, 0x00, IAP_F_FM | IAP_F_CC), > - IAPDESCR(D0H_01H, 0xD0, 0x01, IAP_F_FM | IAP_F_I7 | IAP_F_WM | > - IAP_F_SB | IAP_F_IB | IAP_F_SBX | IAP_F_IBX | IAP_F_HW), > - IAPDESCR(D0H_02H, 0xD0, 0x02, IAP_F_FM | IAP_F_SB | IAP_F_IB | > - IAP_F_SBX | IAP_F_IBX | IAP_F_HW), > - IAPDESCR(D0H_10H, 0xD0, 0x10, IAP_F_FM | IAP_F_SB | IAP_F_IB | > - IAP_F_SBX | IAP_F_IBX | IAP_F_HW), > - IAPDESCR(D0H_20H, 0xD0, 0x20, IAP_F_FM | IAP_F_SB | IAP_F_IB | > - IAP_F_SBX | IAP_F_IBX | IAP_F_HW), > - IAPDESCR(D0H_40H, 0xD0, 0x40, IAP_F_FM | IAP_F_SB | IAP_F_IB | > - IAP_F_SBX | IAP_F_IBX | IAP_F_HW), > - IAPDESCR(D0H_80H, 0xD0, 0X80, IAP_F_FM | IAP_F_SB | IAP_F_IB | > - IAP_F_SBX | IAP_F_IBX | IAP_F_HW), > + IAPDESCR(D0H_01H, 0xD0, 0x01, IAP_F_FM | IAP_F_I7 | IAP_F_WM | > IAP_F_IB | IAP_F_IBX | IAP_F_HW), > This is unnecessarily going above 80-columns. Thanks, Hiren > + IAPDESCR(D0H_02H, 0xD0, 0x02, IAP_F_FM | IAP_F_IB | IAP_F_IBX | > IAP_F_HW), > + IAPDESCR(D0H_10H, 0xD0, 0x10, IAP_F_FM | IAP_F_IB | IAP_F_IBX | > IAP_F_HW), > + IAPDESCR(D0H_11H, 0xD0, 0x11, IAP_F_FM | IAP_F_SB | IAP_F_SBX), > + IAPDESCR(D0H_12H, 0xD0, 0x12, IAP_F_FM | IAP_F_SB | IAP_F_SBX), > + IAPDESCR(D0H_20H, 0xD0, 0x20, IAP_F_FM | IAP_F_IB | IAP_F_IBX | > IAP_F_HW), > + IAPDESCR(D0H_21H, 0xD0, 0x21, IAP_F_FM | IAP_F_SB | IAP_F_SBX), > + IAPDESCR(D0H_40H, 0xD0, 0x40, IAP_F_FM | IAP_F_IB | IAP_F_IBX | > IAP_F_HW), > + IAPDESCR(D0H_41H, 0xD0, 0x41, IAP_F_FM | IAP_F_SB | IAP_F_SBX), > + IAPDESCR(D0H_42H, 0xD0, 0x42, IAP_F_FM | IAP_F_SB | IAP_F_SBX), > + IAPDESCR(D0H_80H, 0xD0, 0x80, IAP_F_FM | IAP_F_IB | IAP_F_IBX | > IAP_F_HW), > + IAPDESCR(D0H_81H, 0xD0, 0x81, IAP_F_FM | IAP_F_SB | IAP_F_SBX), > + IAPDESCR(D0H_82H, 0xD0, 0x82, IAP_F_FM | IAP_F_SB | IAP_F_SBX), > > IAPDESCR(D1H_01H, 0xD1, 0x01, IAP_F_FM | IAP_F_WM | IAP_F_SB | > IAP_F_IB | IAP_F_SBX | IAP_F_IBX | IAP_F_HW), > > Modified: head/sys/dev/hwpmc/pmc_events.h > > ============================================================================== > --- head/sys/dev/hwpmc/pmc_events.h Sun Aug 25 01:55:14 2013 > (r254823) > +++ head/sys/dev/hwpmc/pmc_events.h Sun Aug 25 02:07:28 2013 > (r254824) > @@ -1053,9 +1053,16 @@ __PMC_EV(IAP, EVENT_D0H_00H) \ > __PMC_EV(IAP, EVENT_D0H_01H) \ > __PMC_EV(IAP, EVENT_D0H_02H) \ > __PMC_EV(IAP, EVENT_D0H_10H) \ > +__PMC_EV(IAP, EVENT_D0H_11H) \ > +__PMC_EV(IAP, EVENT_D0H_12H) \ > __PMC_EV(IAP, EVENT_D0H_20H) \ > +__PMC_EV(IAP, EVENT_D0H_21H) \ > __PMC_EV(IAP, EVENT_D0H_40H) \ > +__PMC_EV(IAP, EVENT_D0H_41H) \ > +__PMC_EV(IAP, EVENT_D0H_42H) \ > __PMC_EV(IAP, EVENT_D0H_80H) \ > +__PMC_EV(IAP, EVENT_D0H_81H) \ > +__PMC_EV(IAP, EVENT_D0H_82H) \ > __PMC_EV(IAP, EVENT_D1H_01H) \ > __PMC_EV(IAP, EVENT_D1H_02H) \ > __PMC_EV(IAP, EVENT_D1H_04H) \ > @@ -3286,12 +3293,13 @@ __PMC_EV_ALIAS("FP_ASSIST.ANY", IAP_EVEN > __PMC_EV_ALIAS("ROB_MISC_EVENTS.LBR_INSERTS", IAP_EVENT_CCH_20H) \ > __PMC_EV_ALIAS("MEM_TRANS_RETIRED.LOAD_LATENCY", IAP_EVENT_CDH_01H) \ > __PMC_EV_ALIAS("MEM_TRANS_RETIRED.PRECISE_STORE", IAP_EVENT_CDH_02H) \ > -__PMC_EV_ALIAS("MEM_UOP_RETIRED.LOADS", IAP_EVENT_D0H_01H) \ > -__PMC_EV_ALIAS("MEM_UOP_RETIRED.STORES", IAP_EVENT_D0H_02H) \ > -__PMC_EV_ALIAS("MEM_UOP_RETIRED.STLB_MISS", IAP_EVENT_D0H_10H) \ > -__PMC_EV_ALIAS("MEM_UOP_RETIRED.LOCK", IAP_EVENT_D0H_20H) \ > -__PMC_EV_ALIAS("MEM_UOP_RETIRED.SPLIT", IAP_EVENT_D0H_40H) \ > -__PMC_EV_ALIAS("MEM_UOP_RETIRED_ALL", IAP_EVENT_D0H_80H) \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.STLB_MISS_LOADS", IAP_EVENT_D0H_11H) \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.STLB_MISS_STORES", IAP_EVENT_D0H_12H) \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.LOCK_LOADS", IAP_EVENT_D0H_21H) > \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.SPLIT_LOADS", IAP_EVENT_D0H_41H) \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.SPLIT_STORES", IAP_EVENT_D0H_42H) \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.ALL_LOADS", IAP_EVENT_D0H_81H) \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.ALL_STORES", IAP_EVENT_D0H_82H) > \ > __PMC_EV_ALIAS("MEM_LOAD_UOPS_RETIRED.L1_HIT", IAP_EVENT_D1H_01H) \ > __PMC_EV_ALIAS("MEM_LOAD_UOPS_RETIRED.L2_HIT", IAP_EVENT_D1H_02H) \ > __PMC_EV_ALIAS("MEM_LOAD_UOPS_RETIRED.LLC_HIT", IAP_EVENT_D1H_04H) \ > @@ -3517,12 +3525,13 @@ __PMC_EV_ALIAS("FP_ASSIST.ANY", IAP_EVEN > __PMC_EV_ALIAS("ROB_MISC_EVENTS.LBR_INSERTS", IAP_EVENT_CCH_20H) \ > __PMC_EV_ALIAS("MEM_TRANS_RETIRED.LOAD_LATENCY", IAP_EVENT_CDH_01H) \ > __PMC_EV_ALIAS("MEM_TRANS_RETIRED.PRECISE_STORE", IAP_EVENT_CDH_02H) \ > -__PMC_EV_ALIAS("MEM_UOP_RETIRED.LOADS", IAP_EVENT_D0H_01H) \ > -__PMC_EV_ALIAS("MEM_UOP_RETIRED.STORES", IAP_EVENT_D0H_02H) \ > -__PMC_EV_ALIAS("MEM_UOP_RETIRED.STLB_MISS", IAP_EVENT_D0H_10H) \ > -__PMC_EV_ALIAS("MEM_UOP_RETIRED.LOCK", IAP_EVENT_D0H_20H) \ > -__PMC_EV_ALIAS("MEM_UOP_RETIRED.SPLIT", IAP_EVENT_D0H_40H) \ > -__PMC_EV_ALIAS("MEM_UOP_RETIRED_ALL", IAP_EVENT_D0H_80H) \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.STLB_MISS_LOADS", IAP_EVENT_D0H_11H) \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.STLB_MISS_STORES", IAP_EVENT_D0H_12H) \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.LOCK_LOADS", IAP_EVENT_D0H_21H) > \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.SPLIT_LOADS", IAP_EVENT_D0H_41H) \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.SPLIT_STORES", IAP_EVENT_D0H_42H) \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.ALL_LOADS", IAP_EVENT_D0H_81H) \ > +__PMC_EV_ALIAS("MEM_UOP_RETIRED.ALL_STORES", IAP_EVENT_D0H_82H) > \ > __PMC_EV_ALIAS("MEM_LOAD_UOPS_RETIRED.L1_HIT", IAP_EVENT_D1H_01H) \ > __PMC_EV_ALIAS("MEM_LOAD_UOPS_RETIRED.L2_HIT", IAP_EVENT_D1H_02H) \ > __PMC_EV_ALIAS("MEM_LOAD_UOPS_RETIRED.LLC_HIT", IAP_EVENT_D1H_04H) \ >