From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id h9gSNYtPjmZneSEAWB0awg (envelope-from ) for ; Wed, 10 Jul 2024 05:08:27 -0400 Authentication-Results: simark.ca; dkim=pass (1024-bit key; secure) header.d=sourceware.org header.i=@sourceware.org header.a=rsa-sha256 header.s=default header.b=sYjoYitz; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id C68581E0C3; Wed, 10 Jul 2024 05:08:27 -0400 (EDT) Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id AA6781E097 for ; Wed, 10 Jul 2024 05:08:25 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 2096E386C59A for ; Wed, 10 Jul 2024 09:08:25 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 2096E386C59A DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1720602505; bh=jo5LWpAt7NSomL0X8R/h0mOoDHXptLKuex0xVzHyiKg=; h=To:CC:Subject:Date:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=sYjoYitz6bIOTLsXsPijTzocz6egb/smhkgLw4PchIcNeOdIqaeK3g0CdL1RoCM5T YJcEtejjlF9zGwF5OE6v/+vmVn6/WayrgdCww35rkeZOdj4tu+XxAy8mCrjhZ0gf8s 4qz9yHbKlmEH5lb0LOl4/tkNW8u+Rd6HWG0/8u/c= Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.15]) by sourceware.org (Postfix) with ESMTPS id 55250386486F for ; Wed, 10 Jul 2024 09:07:40 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 55250386486F ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 55250386486F ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1720602462; cv=fail; b=prxZRziyvM9Na2B+jlhkxIL8UHBZLsds+G4uXvsuwFiAtdfcbxf8sAkzvVCxEi4e9IrXHNgD6Igns1rvDZ99alZGmGAZXrl0XTS6dBdXcRi590DE0Ssn5r7u47lkox7dXamgvVtgOfRRCjytpb5RE207xwdQwizOebsKZ/tK3dk= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1720602462; c=relaxed/simple; bh=WYAQPMjHp4qFtwCZXSVJjWNKLnvSDJesfp0cu9GZvO0=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=NTmG9KC4W4+2++iVKnOqUenDnD66tdMpNlW1NonQ2dDZOamdanCx6kV+75tOGifJiWC6TYp8+2R/c4AzhoC9SYGeXx6L7brx8vncQbOko1ertT0SjghmbkDrP6uO6kgnEJQXRdZJJb1H7AHInw/CuomrB3pTThAzKnHmueXbodM= ARC-Authentication-Results: i=2; server2.sourceware.org X-CSE-ConnectionGUID: ItithsX3TtWeZaHz6SZXOQ== X-CSE-MsgGUID: PFXAXoQeRMG29Uvh0rDR2A== X-IronPort-AV: E=McAfee;i="6700,10204,11128"; a="21674353" X-IronPort-AV: E=Sophos;i="6.09,197,1716274800"; d="scan'208";a="21674353" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by orvoesa107.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Jul 2024 02:07:38 -0700 X-CSE-ConnectionGUID: FCVxzt4sThGV+Iqk5jpgZA== X-CSE-MsgGUID: SNWFhzJSR3W7JsLu4flDqQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.09,197,1716274800"; d="scan'208";a="71381154" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmviesa002.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 10 Jul 2024 02:07:38 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Wed, 10 Jul 2024 02:07:38 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Wed, 10 Jul 2024 02:07:37 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39 via Frontend Transport; Wed, 10 Jul 2024 02:07:37 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.101) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Wed, 10 Jul 2024 02:07:37 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AFbhzSAZNWOIrjYVWzrslp/9N7WAnW6QcLxaWqirmDQ6LMyTD9bpWD2RBO/qkblzW43kC757HPip5S30mUBMqtmWllBW62T8h4lpBOfs4oLinr+GotrW1IipddqdXI/WzJxJRD4s99b+AK1XUyyjADEinkMhKsI3wPPiEJ7Cmf/cvdhJZg9kyZkrz198O52ukFS5pEdnVZflxuEzLYFX+MaxNqUuL8GsaTLk3lelmx3Tk3Dk5lgd4W404rueEyz8K0MpKdxxIglBGYmMMDrZdux/JD5Tt5V/86Jp4MFlE3jKn3tU9X6Tv742CuPn7DBxEOvL/rflgPLbKgqHBeV02A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=PJMff53ezT05bTSZHlQ5d4ljv0cNDitvM8Ft+W954P4=; b=Vh6iZ/j/sks+/mhsXHhGkHeP+LuTnpyXNJaHm27OkqhUU17tcIFRL0DWURabHyueXNhSTiEhudeZKOvHiqFZkTdvxs0BlNvMr5XStLyo0YJSi9+KC9C69DwH5lZKXfkpo2lFHaK0ehMtUXW1BiEGUJrxTS4LLhLY5N3neWGPHsi2lMHmGIKtmwXQQldFkK4UFXuHC5gGdYI9kBZ9vQIRRsWjHMgbHhgwRpRsbxPYBCQCVFUABBjESX9Wo1K2E1GuVZUoZ2zrWAj7F+xn2aPAo44OaiYzWQbl7HcjFQ/lfF4gMRCo7bAw9mvIbQ3ALpkXDyPLt9UzW4eR/F2gtXuD9A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from SN7PR11MB7638.namprd11.prod.outlook.com (2603:10b6:806:34b::22) by SA1PR11MB8351.namprd11.prod.outlook.com (2603:10b6:806:384::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7741.36; Wed, 10 Jul 2024 09:07:36 +0000 Received: from SN7PR11MB7638.namprd11.prod.outlook.com ([fe80::25b8:16dc:755e:34d1]) by SN7PR11MB7638.namprd11.prod.outlook.com ([fe80::25b8:16dc:755e:34d1%4]) with mapi id 15.20.7762.016; Wed, 10 Jul 2024 09:07:36 +0000 To: Florian Weimer CC: "Schimpe, Christina via Gdb" , Thiago Jung Bauermann , Tom Tromey Subject: RE: Shadow stack backtrace command name Thread-Topic: Shadow stack backtrace command name Thread-Index: AdozJwW2cA0IuLedSP6o6CeJM6XuywCpgST1AQQ7ZoACPm5c4CML8+fXAL9gQHAAA34L1QAi0sWA Date: Wed, 10 Jul 2024 09:07:35 +0000 Message-ID: References: <87a5q0eq34.fsf@tromey.com> <871qb6c5y8.fsf@linaro.org> <874j93vh4w.fsf@oldenburg.str.redhat.com> <87bk36zjda.fsf@oldenburg.str.redhat.com> In-Reply-To: <87bk36zjda.fsf@oldenburg.str.redhat.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SN7PR11MB7638:EE_|SA1PR11MB8351:EE_ x-ms-office365-filtering-correlation-id: a85bc2b5-58e4-4f0a-5a74-08dca0bfbd98 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|376014|366016|38070700018; x-microsoft-antispam-message-info: =?us-ascii?Q?K663gEJB8zhcdA4wZNH48KjWn/cMmF24dDGnJKZ16JcyTNG28vGB6+NmgiIZ?= =?us-ascii?Q?S9BbcCEyyFzoWlq+pWNYeZ/8mFAPo+bYu7JSOuPtIZ6PaI9lOejmOTNWUYlQ?= =?us-ascii?Q?UufmfxowYZ0vzGaSMaajjbXcM9b1oE7KFEvRlYI11CKR7hUQyHaDTfKMCVSx?= =?us-ascii?Q?fRemPi8Z6TT+uAUam6Q3mk8H2WZjEA/fVt596aavk1Ai4ohIpjWyJ8Fz2GsB?= =?us-ascii?Q?zCa/Cv5qfCiyWNpCurYrfCX/zEmDZ47wsecqPz3AzMdlvb8kGE1+6xl2FLHk?= =?us-ascii?Q?NGhMH2fjmhNlESpgsv7CWbe/SaS8hsRtnjmBM0PRQE2ye8DyF3o/10PRrhU2?= =?us-ascii?Q?Z7+jamIa2rRjtqqtjxcJNxCHbfRZfGhBrrjdcNh5VV7qcRpHbPySslhbhfAF?= =?us-ascii?Q?se3Qt6n9Y/zUXkGBxt/a7Kugjw4BM1be8nhnK/9QhkDYPnue21QqRBwizqGY?= =?us-ascii?Q?+9mkZPuY6crhxYbLFWYwJWFbNEd8zyL/TLonxdoUH1Z1o6jLbk0hL1/zoZDq?= =?us-ascii?Q?lPcZMHdhTJnk5DwkoUVgiXVM5C3du01OUGRNeLVZQWDyan1QL8g27k1eWXep?= =?us-ascii?Q?K7PTc1kHuE0CMzGr+S6O9ensnOQz6/7rdP2JtQ7c/TLn+Yk8qDV/Ox15k3k3?= =?us-ascii?Q?Ys9UC16XiR4+FQ7/ZH9DYNZvDV++mF30SF8Uq5H1hWnCmO5NM9nWcsXlcOfy?= =?us-ascii?Q?7U4BqmM+B1EfRTRxEU0L6O7zrIgrLsk/P8AHevFv5+k/L65AQIzKrVnsFK+E?= =?us-ascii?Q?l5Ui5q7Vw8bAKSjXvuLvjqDANrIlBEuKALFF++r1hddFsoYutuSjnQl9/qts?= =?us-ascii?Q?YxAd9837EPW+kHalLvKGXSsv2B+WNzjhEnSDOJf89UwCquVpXEP1BkmR3cCs?= =?us-ascii?Q?SPlnlGVfv33Kw+h2j7M9tnFkQclyLBwCgJOg8joElaBik6efPPaFbAFci31K?= =?us-ascii?Q?DMmbdSpZyXnW+D1u2QuTRj3qWrPIjfLRtuLVcLejc82c2vQOTLKVV2ZduUyo?= =?us-ascii?Q?QWvdqGoh0aFXh9obdB3lbcj+YfVQU2MLS0OcnqD6H4JCgoJEg70DWeTdx6EE?= =?us-ascii?Q?c2x+k9P0ujNt7UoxBf3D98fGg0KRchTFHIDqx56f+Y+c4ikCmARE6snEC3vf?= =?us-ascii?Q?jPOktYROz2kDzCPhzdWauEdm7uhwTbtzR1mQBHGhyj/npHVPxIx58YwqNfil?= =?us-ascii?Q?860JvThOSO2hrG+lCOAw4HFCHF0BtNxb5AynxOCSZeztvFRnTL33P3IS244R?= =?us-ascii?Q?ZCztS76fR3bGezh5zhf2Pta3UhdnXZBQdqZ5FIODprjvj/OCiD2B1VORlS8/?= =?us-ascii?Q?gRzupjo6Ofwz0O6AWGb/yWQLmYvAY6g37EavmooCFqUIyw=3D=3D?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN7PR11MB7638.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(376014)(366016)(38070700018); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?8i+O7rREXAicxlHsXSuoYhEfH1wQBDrRIwT2+X9AF+nG6JjKTDv2JJVVt1Gp?= =?us-ascii?Q?PrUg8A8dIPiAgdYTjB0EbBsdZLQi+X7CUcCp9DPfhYtVDZKJ2G1tq787EItG?= =?us-ascii?Q?+4iyc0nKad08RQIN2NwEOWDUjlhn2iTP6qnwhflFoIEUh/94cH6H750MlCMt?= =?us-ascii?Q?ZM8lr+HhKEaTWPPJFjt11/+fGycDRocNcSXwc9IOon+3ORKdKiYw5tQSgY5B?= =?us-ascii?Q?HF9iIOIzQjeduQhB/PIqqJ6i9n2A5f6YeBBtVBPoDH8eUdi0xNkuUMCAEuUi?= =?us-ascii?Q?Gzu1s6w5cgeyfXp/UlDzFEDaZdz89LWbG84NJzpbMrt4dAkMedVqsSrBQb7/?= =?us-ascii?Q?E8+vhfScy4xdp3Sn5mVjgDKA4mQbCB98zQbWVtO3wS/xk1onwri0lGGJzaJs?= =?us-ascii?Q?j+vmbxodP0esEDIFhgNGvKB64ukDkB3Ki8JaFim8VfidPtLaroBf4TOh8iZb?= =?us-ascii?Q?TRu9XsgFQ0KnMcbR7UMIZRI7LfJoEY0KeSzfydn2aypsEqCdqhMGFaC89kfA?= =?us-ascii?Q?fDJhe/sjQCMK9fqPqypgpQkec5+l5HxmH4cr+BbAvi8XUTd5bsVKWq31bKVH?= =?us-ascii?Q?shnVFrH137kGCIK+FhNKAGP5sn6jgwiDN0m8M09wQNpX5SWcDTRW8tCjqejL?= =?us-ascii?Q?LoIjiFpBJqbSlR/JSX1U5046fMZNiR6rbDMomt+G/Tefbz/gDjqN0ty2XHxP?= =?us-ascii?Q?BjTiklJd8b4xnrEU3LTdNtxaOnhWel23bu9SCbAyqCTTf509ZbgLWijKS/sm?= =?us-ascii?Q?ZPfC4H8XSK+dBVs+X6nPqBhS7vA/fBJXDTGAGcDQj+/BeDIIFGfezHAoyhut?= =?us-ascii?Q?jYOUE4tgucG8et8D5pUWzKEfwzvjz4d02oNDSR4G9B78qX7LTFEIzgSL+Of5?= =?us-ascii?Q?pOdgFbVzfHFMxqGHnhBr+ZRMnWGLRpYM2MhWQSdVAch4BbNvy486sRfm7gX6?= =?us-ascii?Q?cMQ99ycNtZgk9cUTgKyUaKRygt2aHSPfFwXXzQ/5MSgIRnNiBUbtqd0hpfX/?= =?us-ascii?Q?UymqfPJQgWA63jje4jbH9EAkW94hl/Y/j9Vaspd1Py+xCKr5uuG+hoP+1ORg?= =?us-ascii?Q?guCP5i/4VJ0uO9ya08ts9zgIfD4HwHgvAhnzOWZ5fPd/Gc1inIn5bnjU8PHz?= =?us-ascii?Q?KKr91Lo+XbANnaDdKQrmtzhtMiqZ/IdMP9S6FahM1Jr4ZOtFrGTf8WQ+KSWm?= =?us-ascii?Q?D/F9bRqimcMG0zexmjxrPNuDPdTjSrXmCISFnVCch2WwMFxq28zi+kWhJzgo?= =?us-ascii?Q?F83/qqHYgP1JOHAXg9ZIZH0Ae8/m2KRaK7pIo2zBEIKw3UPL6Rx487hypuQr?= =?us-ascii?Q?zZaV+SAByWQYX/Z9NoRKhe5XDoyMPddaQ29SqsB6Ojp1hqC+2DbLBS0nMzNm?= =?us-ascii?Q?9a02BS6HXY5J4XQKOeYGAASpEbVVeCULtwP/+7Cf230ZPJn0qlZgmKMKgNyO?= =?us-ascii?Q?7EXncUbWXN6lj/PuPREGbUx7lRpQ0M8jJxan+O89QdQLvSX5TSHGKg1JP1o0?= =?us-ascii?Q?HKh22InC+x/tF2FGA7Q+EWNnAv2CLd7xL8AnZT073Uj/6ud2GEzBx/j8V/nF?= =?us-ascii?Q?5rcZpR2FoCNQi39OEpXd7sTrrIhgqSsa0n38ZD4oaf9ArFovg7bjEDJ9a0AR?= =?us-ascii?Q?fQ=3D=3D?= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN7PR11MB7638.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a85bc2b5-58e4-4f0a-5a74-08dca0bfbd98 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jul 2024 09:07:35.9685 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: KYjzpe8cF5hpUaxh0lts1JXUShU6eWKmFS4Tw00/sIs6KHkw0cEq8l0eHymM7iUcnmoSyUYZN+iCPP2exyoXn5RcHPNR0ekAykqLVCKCA+o= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR11MB8351 X-OriginatorOrg: intel.com Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-4.7 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gdb@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: "Schimpe, Christina via Gdb" Reply-To: "Schimpe, Christina" Errors-To: gdb-bounces~public-inbox=simark.ca@sourceware.org Sender: "Gdb" > >> * Christina via Gdb Schimpe: > >> > >> > However, based on the use cases that I am aware of, I am not sure > >> > if the user wants to always see the shadow stack bt in the ordinary > >> > bt output (if shadow stack is enabled). > >> > >> Based on my experiments, Linux currently does not push the > >> instruction pointer onto the shadow stack if code is interrupted by a > >> signal. It still works because the return mechanism is different. > >> This would be a very visible difference between ordinary backtraces and > shadow stack based backtraces. > >> As far as I understand it, the kernel could change, and it may still > >> be early enough to make this change. > > > > Could you explain a bit why and what you think the kernel will change ? > = > I could imagine that an additional address is pushed onto the shadow stack > when a signal is delivered, so that we can get a full backtrace across si= gnal > returns. > = > > Just to be sure that I understand correctly: > = > > Do you think that this different display for the ordinary and shadow > > stack bt in case of signals is one argument more for displaying the > > stacks together? How would this look like? > = > Currently, it's not possible to use shadow stacks for backtraces because = you > won't be able to print the location after line. = At least > that's what I encountered when I tried to use shadow stack for implementi= ng > the glibc backtrace function. We are currently working on the implementation of the shadow stack backtrac= e. This is how we would print a shadow stack backtrace for signals: ~~~ (gdb) bt shadow #0 0x00007ffff7c54d90 in __restore_rt from /lib64/libc.so.6 #1 0x80007ffff79fffd8 #2 0x00007ffff7c54ce6 in __GI_raise at ../sysdeps/posix/raise.c:27 #3 0x000000000040115d in main at /tmp/amd64-shadow-stack-signal.c:32 [...] ~~~ The elements on the shadow stack are following the description of the linux = kernel for signals: "When a signal happens, the old pre-signal state is pushed on the stack. When shadow stack is enabled, the shadow stack specific state is pushed = onto the shadow stack. Today this is only the old SSP (shadow stack pointer= ), pushed in a special format with bit 63 set." (https://docs.kernel.org/arch/x86/shstk.html) Frame 1 contains the old SSP with bit 63 set. This would be the corresponding ordinary stack: ~~~ (gdb) bt #0 handler (signo=3D10) at /tmp/amd64-shadow-stack-signal.c:25 #1 #2 __pthread_kill_implementation ([...]) at pthread_kill.c:44 #3 0x00007ffff7ca15f3 in __pthread_kill_internal (signo=3D10, threadid=3D<= optimized out>) at pthread_kill.c:78 #4 0x00007ffff7c54ce6 in __GI_raise (sig=3D10) at ../sysdeps/posix/raise.c= :26 #5 0x000000000040115d in main () at /tmp/amd64-shadow-stack-signal.c:31 ~~~ Do you see much value in combining the outputs? = Christina Intel Deutschland GmbH Registered Address: Am Campeon 10, 85579 Neubiberg, Germany Tel: +49 89 99 8853-0, www.intel.de Managing Directors: Sean Fennelly, Jeffrey Schneiderman, Tiffany Doon Silva Chairperson of the Supervisory Board: Nicole Lau Registered Office: Munich Commercial Register: Amtsgericht Muenchen HRB 186928