From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id EDqMOOJ7cmfYdjoAWB0awg (envelope-from ) for ; Mon, 30 Dec 2024 05:54:26 -0500 Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=UYp/OLNT; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id E350F1E097; Mon, 30 Dec 2024 05:54:26 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-6.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=unavailable autolearn_force=no version=4.0.0 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 40EA51E05C for ; Mon, 30 Dec 2024 05:54:26 -0500 (EST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id EEF5B3858D26 for ; Mon, 30 Dec 2024 10:54:25 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EEF5B3858D26 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=UYp/OLNT Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.9]) by sourceware.org (Postfix) with ESMTPS id 6B0863858D21 for ; Mon, 30 Dec 2024 10:52:31 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6B0863858D21 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 6B0863858D21 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=192.198.163.9 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1735555951; cv=none; b=yA9SkAz1fw6XfwfWr6aU9ckFJN04C4eB0XqmDxMfq2mBFIpe04sgbMdYdv0y6nmifQ0RjFXi5ft/UrA3o1xhr8SAOTFga5boIxuHtcByYiNqmD+67KJcHCYq60QTqdGPpdT0vRXSPrupBc4Qd+3CiHPdz0w4/0FLe9/hFlhLKoo= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1735555951; c=relaxed/simple; bh=ikLHRVC2v205eZmkDOzc9UTpY+T165rl1DTt6U5cXpw=; h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version; b=AY/FxnC5IeFvYQjJRDzDAKvDYF/cr2gJYyRXs/nAoNT1DAc1zPXqZw5BjFY5JY//CkXSZDNwRXRVKx8S6uGTIzc5qHdPcd7VU/Q/mE+2XmaZ8tJrwmdJIoiKiw4TIg4AvszW/ADcpM/YNPYzEq6W1/4vzGHbeldMEPcS+7nIwcI= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6B0863858D21 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1735555951; x=1767091951; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=ikLHRVC2v205eZmkDOzc9UTpY+T165rl1DTt6U5cXpw=; b=UYp/OLNTGTjhwvfjb8ACjOJg/+RQ66cNaqEjTYRnUvH9KskNxWTKi+2Y VySy5YB6s0Af6dp3hX83ajMsubvobHYsCv4DKrceIoMLOdeZjSr1T6iYm QHlhPvwWPtQEqsYhW92zUFVIuzX+ASgZEPLSqnxwnTicA16BOltZvhdGW MEQjfuLmrBUkbE+eK61uzgl4B4o0EuLA10v4o0duAiypDs8SlhXNfYUY4 Rq+aztFgw5UNJOlcrImf3zWVAG6Dr+5dTmO4Se3Vgil0NJN3/dAS/Bdk3 le5ws6/px1XtR2OfxTbVGUHb6fuxP1+AYXORsSbZZg/VC8V59msBU7jec Q==; X-CSE-ConnectionGUID: 2+txbDPlROeUUGlNG6CLew== X-CSE-MsgGUID: XF/x2tCcSEq80DXTFRO1tg== X-IronPort-AV: E=McAfee;i="6700,10204,11299"; a="46525643" X-IronPort-AV: E=Sophos;i="6.12,276,1728975600"; d="scan'208";a="46525643" Received: from orviesa009.jf.intel.com ([10.64.159.149]) by fmvoesa103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Dec 2024 02:52:31 -0800 X-CSE-ConnectionGUID: NcVysob4SxiI8fA6sIT13A== X-CSE-MsgGUID: pwsDKtoISyet+P6+yAIf0Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,276,1728975600"; d="scan'208";a="100614704" Received: from gkldtt-dev-004.igk.intel.com (HELO localhost) ([10.123.221.202]) by orviesa009-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Dec 2024 02:52:30 -0800 From: Tankut Baris Aktemur To: gdb-patches@sourceware.org Cc: simon.marchi@efficios.com Subject: [PATCH v2 04/11] gdbserver: convert init_register_cache and new_register_cache into constructors Date: Mon, 30 Dec 2024 11:49:45 +0100 Message-Id: <20241230-upstream-gdbserver-regcache-v2-4-020a9514fcf0@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241230-upstream-gdbserver-regcache-v2-0-020a9514fcf0@intel.com> References: <20241230-upstream-gdbserver-regcache-v2-0-020a9514fcf0@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Mailer: b4 0.14.2 Content-Transfer-Encoding: base64 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org VGhpcyBpcyBhIHJlZmFjdG9yaW5nIHRoYXQgY29udmVydHMKCiAgaW5pdF9yZWdpc3Rlcl9jYWNo ZSAoc3RydWN0IHJlZ2NhY2hlICpyZWdjYWNoZSwKICAgICAgICAgICAgICAgICAgICAgICBjb25z dCBzdHJ1Y3QgdGFyZ2V0X2Rlc2MgKnRkZXNjLAogICAgICAgICAgICAgICAgICAgICAgIHVuc2ln bmVkIGNoYXIgKnJlZ2J1ZikKCmludG8gdGhlIGNvbnN0cnVjdG9yCgogIHJlZ2NhY2hlIChjb25z dCB0YXJnZXRfZGVzYyAqdGRlc2MsIHVuc2lnbmVkIGNoYXIgKnJlZ2J1ZikKCmFuZCBjb252ZXJ0 cwoKICBuZXdfcmVnaXN0ZXJfY2FjaGUgKGNvbnN0IHN0cnVjdCB0YXJnZXRfZGVzYyAqdGRlc2Mp CgppbnRvIHRoZSBjb25zdHJ1Y3RvcgoKICByZWdjYWNoZSAoY29uc3QgdGFyZ2V0X2Rlc2MgKnRk ZXNjKQoKQWxzbyB1c2UgRElTQUJMRV9DT1BZX0FORF9BU1NJR04gZm9yIGFkZGl0aW9uYWwgY29t cGlsZS10aW1lIHNhZmV0eS4KClRlc3RlZCBieSByZWJ1aWxkaW5nIGdkYnNlcnZlciB3aXRoICct LWVuYWJsZS1pbnByb2Nlc3MtYWdlbnQ9bm8nIGFuZAp3aXRoICctLWVuYWJsZS1pbnByb2Nlc3Mt YWdlbnQ9eWVzJy4KLS0tCiBnZGJzZXJ2ZXIvcmVnY2FjaGUuY2MgICB8IDYzICsrKysrKysrKysr KysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGdkYnNlcnZlci9yZWdjYWNo ZS5oICAgIHwgMTQgKysrKystLS0tLS0KIGdkYnNlcnZlci9zZXJ2ZXIuY2MgICAgIHwgIDIgKy0K IGdkYnNlcnZlci90cmFjZXBvaW50LmNjIHwgMzUgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t CiA0IGZpbGVzIGNoYW5nZWQsIDQ1IGluc2VydGlvbnMoKyksIDY5IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2dkYnNlcnZlci9yZWdjYWNoZS5jYyBiL2dkYnNlcnZlci9yZWdjYWNoZS5jYwpp bmRleCBiNWMzYjdlOWNiYWY2YzI2N2JmMWI0YTNkM2E1ZWNmNGY4Nzg4MTM1Li4xMTk1N2FmMzUx ZDQ3NmQ0N2ViNGI5ZWFjYjgxMGFjMmY2YWRlZDQwIDEwMDY0NAotLS0gYS9nZGJzZXJ2ZXIvcmVn Y2FjaGUuY2MKKysrIGIvZ2Ric2VydmVyL3JlZ2NhY2hlLmNjCkBAIC00Miw3ICs0Miw3IEBAIGdl dF90aHJlYWRfcmVnY2FjaGUgKHRocmVhZF9pbmZvICp0aHJlYWQsIGJvb2wgZmV0Y2gpCiAKICAg ICAgIGdkYl9hc3NlcnQgKHByb2MtPnRkZXNjICE9IE5VTEwpOwogCi0gICAgICByZWdjYWNoZSA9 IG5ld19yZWdpc3Rlcl9jYWNoZSAocHJvYy0+dGRlc2MpOworICAgICAgcmVnY2FjaGUgPSBuZXcg c3RydWN0IHJlZ2NhY2hlIChwcm9jLT50ZGVzYyk7CiAgICAgICB0aHJlYWQtPnNldF9yZWdjYWNo ZSAocmVnY2FjaGUpOwogICAgIH0KIApAQCAtMTEyLDU1ICsxMTIsMzggQEAgcmVnY2FjaGVfaW52 YWxpZGF0ZSAodm9pZCkKIAogI2VuZGlmCiAKLXN0cnVjdCByZWdjYWNoZSAqCi1pbml0X3JlZ2lz dGVyX2NhY2hlIChzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlLAotCQkgICAgIGNvbnN0IHN0cnVj dCB0YXJnZXRfZGVzYyAqdGRlc2MsCi0JCSAgICAgdW5zaWduZWQgY2hhciAqcmVnYnVmKQorcmVn Y2FjaGU6OnJlZ2NhY2hlIChjb25zdCB0YXJnZXRfZGVzYyAqdGRlc2MsCisJCSAgICB1bnNpZ25l ZCBjaGFyICpyZWdidWYpCiB7Ci0gIGlmIChyZWdidWYgPT0gTlVMTCkKLSAgICB7Ci0jaWZuZGVm IElOX1BST0NFU1NfQUdFTlQKLSAgICAgIC8qIE1ha2Ugc3VyZSB0byB6ZXJvLWluaXRpYWxpemUg dGhlIHJlZ2lzdGVyIGNhY2hlIHdoZW4gaXQgaXMKLQkgY3JlYXRlZCwgaW4gY2FzZSB0aGVyZSBh cmUgcmVnaXN0ZXJzIHRoZSB0YXJnZXQgbmV2ZXIKLQkgZmV0Y2hlcy4gIFRoaXMgd2F5IHRoZXkn bGwgcmVhZCBhcyB6ZXJvIGluc3RlYWQgb2YKLQkgZ2FyYmFnZS4gICovCi0gICAgICByZWdjYWNo ZS0+dGRlc2MgPSB0ZGVzYzsKLSAgICAgIHJlZ2NhY2hlLT5yZWdpc3RlcnMKLQk9ICh1bnNpZ25l ZCBjaGFyICopIHhjYWxsb2MgKDEsIHRkZXNjLT5yZWdpc3RlcnNfc2l6ZSk7Ci0gICAgICByZWdj YWNoZS0+cmVnaXN0ZXJzX293bmVkID0gdHJ1ZTsKLSAgICAgIHJlZ2NhY2hlLT5yZWdpc3Rlcl9z dGF0dXMKLQk9ICh1bnNpZ25lZCBjaGFyICopIHhtYWxsb2MgKHRkZXNjLT5yZWdfZGVmcy5zaXpl ICgpKTsKLSAgICAgIG1lbXNldCAoKHZvaWQgKikgcmVnY2FjaGUtPnJlZ2lzdGVyX3N0YXR1cywg UkVHX1VOQVZBSUxBQkxFLAotCSAgICAgIHRkZXNjLT5yZWdfZGVmcy5zaXplICgpKTsKLSNlbHNl Ci0gICAgICBnZGJfYXNzZXJ0X25vdF9yZWFjaGVkICgiY2FuJ3QgYWxsb2NhdGUgbWVtb3J5IGZy b20gdGhlIGhlYXAiKTsKLSNlbmRpZgotICAgIH0KLSAgZWxzZQotICAgIHsKLSAgICAgIHJlZ2Nh Y2hlLT50ZGVzYyA9IHRkZXNjOwotICAgICAgcmVnY2FjaGUtPnJlZ2lzdGVycyA9IHJlZ2J1ZjsK LSAgICAgIHJlZ2NhY2hlLT5yZWdpc3RlcnNfb3duZWQgPSBmYWxzZTsKKyAgZ2RiX2Fzc2VydCAo cmVnYnVmICE9IG51bGxwdHIpOworCisgIHRoaXMtPnRkZXNjID0gdGRlc2M7CisgIHRoaXMtPnJl Z2lzdGVycyA9IHJlZ2J1ZjsKKyAgdGhpcy0+cmVnaXN0ZXJzX293bmVkID0gZmFsc2U7CiAjaWZu ZGVmIElOX1BST0NFU1NfQUdFTlQKLSAgICAgIHJlZ2NhY2hlLT5yZWdpc3Rlcl9zdGF0dXMgPSBO VUxMOworICB0aGlzLT5yZWdpc3Rlcl9zdGF0dXMgPSBudWxscHRyOwogI2VuZGlmCi0gICAgfQot Ci0gIHJlZ2NhY2hlLT5yZWdpc3RlcnNfZmV0Y2hlZCA9IGZhbHNlOwotCi0gIHJldHVybiByZWdj YWNoZTsKKyAgdGhpcy0+cmVnaXN0ZXJzX2ZldGNoZWQgPSBmYWxzZTsKIH0KIAogI2lmbmRlZiBJ Tl9QUk9DRVNTX0FHRU5UCiAKLXN0cnVjdCByZWdjYWNoZSAqCi1uZXdfcmVnaXN0ZXJfY2FjaGUg KGNvbnN0IHN0cnVjdCB0YXJnZXRfZGVzYyAqdGRlc2MpCityZWdjYWNoZTo6cmVnY2FjaGUgKGNv bnN0IHRhcmdldF9kZXNjICp0ZGVzYykKIHsKLSAgc3RydWN0IHJlZ2NhY2hlICpyZWdjYWNoZSA9 IG5ldyBzdHJ1Y3QgcmVnY2FjaGU7Ci0KICAgZ2RiX2Fzc2VydCAodGRlc2MtPnJlZ2lzdGVyc19z aXplICE9IDApOwogCi0gIHJldHVybiBpbml0X3JlZ2lzdGVyX2NhY2hlIChyZWdjYWNoZSwgdGRl c2MsIE5VTEwpOworICAvKiBNYWtlIHN1cmUgdG8gemVyby1pbml0aWFsaXplIHRoZSByZWdpc3Rl ciBjYWNoZSB3aGVuIGl0IGlzCisgICAgIGNyZWF0ZWQsIGluIGNhc2UgdGhlcmUgYXJlIHJlZ2lz dGVycyB0aGUgdGFyZ2V0IG5ldmVyCisgICAgIGZldGNoZXMuICBUaGlzIHdheSB0aGV5J2xsIHJl YWQgYXMgemVybyBpbnN0ZWFkIG9mCisgICAgIGdhcmJhZ2UuICAqLworICB0aGlzLT50ZGVzYyA9 IHRkZXNjOworICB0aGlzLT5yZWdpc3RlcnMKKyAgICA9ICh1bnNpZ25lZCBjaGFyICopIHhjYWxs b2MgKDEsIHRkZXNjLT5yZWdpc3RlcnNfc2l6ZSk7CisgIHRoaXMtPnJlZ2lzdGVyc19vd25lZCA9 IHRydWU7CisgIHRoaXMtPnJlZ2lzdGVyX3N0YXR1cworICAgID0gKHVuc2lnbmVkIGNoYXIgKikg eG1hbGxvYyAodGRlc2MtPnJlZ19kZWZzLnNpemUgKCkpOworICBtZW1zZXQgKCh2b2lkICopIHRo aXMtPnJlZ2lzdGVyX3N0YXR1cywgUkVHX1VOQVZBSUxBQkxFLAorCSAgdGRlc2MtPnJlZ19kZWZz LnNpemUgKCkpOwogfQogCiB2b2lkCmRpZmYgLS1naXQgYS9nZGJzZXJ2ZXIvcmVnY2FjaGUuaCBi L2dkYnNlcnZlci9yZWdjYWNoZS5oCmluZGV4IDEyMzQ1YTM0MzljZDdkZWRjNzBjZDA2ZjEzNDUw ZGRlNTgyMTQxMjQuLmVhNmMyNmEzN2EwN2JmNmQzMzZkNmJkZjMyN2Q1NDNmYWUwYjYzNzAgMTAw NjQ0Ci0tLSBhL2dkYnNlcnZlci9yZWdjYWNoZS5oCisrKyBiL2dkYnNlcnZlci9yZWdjYWNoZS5o CkBAIC00NSw3ICs0NSwxMyBAQCBzdHJ1Y3QgcmVnY2FjaGUgOiBwdWJsaWMgcmVnX2J1ZmZlcl9j b21tb24KICNpZm5kZWYgSU5fUFJPQ0VTU19BR0VOVAogICAvKiBPbmUgb2YgUkVHX1VOQVZBSUxB QkxFIG9yIFJFR19WQUxJRC4gICovCiAgIHVuc2lnbmVkIGNoYXIgKnJlZ2lzdGVyX3N0YXR1cyA9 IG51bGxwdHI7CisKKyAgLyogQ29uc3RydWN0b3JzLiAgKi8KKyAgcmVnY2FjaGUgKGNvbnN0IHRh cmdldF9kZXNjICp0ZGVzYyk7CiAjZW5kaWYKKyAgcmVnY2FjaGUgKGNvbnN0IHRhcmdldF9kZXNj ICp0ZGVzYywgdW5zaWduZWQgY2hhciAqcmVnYnVmKTsKKworICBESVNBQkxFX0NPUFlfQU5EX0FT U0lHTiAocmVnY2FjaGUpOwogCiAgIC8qIFNlZSBnZGJzdXBwb3J0L2NvbW1vbi1yZWdjYWNoZS5o LiAgKi8KICAgZW51bSByZWdpc3Rlcl9zdGF0dXMgZ2V0X3JlZ2lzdGVyX3N0YXR1cyAoaW50IHJl Z251bSkgY29uc3Qgb3ZlcnJpZGU7CkBAIC02NiwxNCArNzIsNiBAQCBzdHJ1Y3QgcmVnY2FjaGUg OiBwdWJsaWMgcmVnX2J1ZmZlcl9jb21tb24KICAgdm9pZCBjb3B5X2Zyb20gKHJlZ2NhY2hlICpz cmMpOwogfTsKIAotc3RydWN0IHJlZ2NhY2hlICppbml0X3JlZ2lzdGVyX2NhY2hlIChzdHJ1Y3Qg cmVnY2FjaGUgKnJlZ2NhY2hlLAotCQkJCSAgICAgIGNvbnN0IHN0cnVjdCB0YXJnZXRfZGVzYyAq dGRlc2MsCi0JCQkJICAgICAgdW5zaWduZWQgY2hhciAqcmVnYnVmKTsKLQotLyogQ3JlYXRlIGEg bmV3IHJlZ2lzdGVyIGNhY2hlIGZvciBJTkZFUklPUi4gICovCi0KLXN0cnVjdCByZWdjYWNoZSAq bmV3X3JlZ2lzdGVyX2NhY2hlIChjb25zdCBzdHJ1Y3QgdGFyZ2V0X2Rlc2MgKnRkZXNjKTsKLQog cmVnY2FjaGUgKmdldF90aHJlYWRfcmVnY2FjaGUgKHRocmVhZF9pbmZvICp0aHJlYWQsIGJvb2wg ZmV0Y2ggPSB0cnVlKTsKIAogLyogUmVsZWFzZSBhbGwgbWVtb3J5IGFzc29jaWF0ZWQgd2l0aCB0 aGUgcmVnaXN0ZXIgY2FjaGUgZm9yIElORkVSSU9SLiAgKi8KZGlmZiAtLWdpdCBhL2dkYnNlcnZl ci9zZXJ2ZXIuY2MgYi9nZGJzZXJ2ZXIvc2VydmVyLmNjCmluZGV4IDU1ODk4ZjU5NTU2YjJkMTZi ZWJlMzE5ZTQ4MzIxY2RmYjBjYzlmODkuLmE0ZDY1NGRlMDBhZGYwMTRlMjhiMGNlMDIyYmE4YTU4 ODZlZTc3Y2UgMTAwNjQ0Ci0tLSBhL2dkYnNlcnZlci9zZXJ2ZXIuY2MKKysrIGIvZ2Ric2VydmVy L3NlcnZlci5jYwpAQCAtNDcwNCw3ICs0NzA0LDcgQEAgcHJvY2Vzc19zZXJpYWxfZXZlbnQgKHZv aWQpCiAgICAgICBpZiAoY3MuY3VycmVudF90cmFjZWZyYW1lID49IDApCiAJewogCSAgc3RydWN0 IHJlZ2NhY2hlICpyZWdjYWNoZQotCSAgICA9IG5ld19yZWdpc3Rlcl9jYWNoZSAoY3VycmVudF90 YXJnZXRfZGVzYyAoKSk7CisJICAgID0gbmV3IHN0cnVjdCByZWdjYWNoZSAoY3VycmVudF90YXJn ZXRfZGVzYyAoKSk7CiAKIAkgIGlmIChmZXRjaF90cmFjZWZyYW1lX3JlZ2lzdGVycyAoY3MuY3Vy cmVudF90cmFjZWZyYW1lLAogCQkJCQkgIHJlZ2NhY2hlLCAtMSkgPT0gMCkKZGlmZiAtLWdpdCBh L2dkYnNlcnZlci90cmFjZXBvaW50LmNjIGIvZ2Ric2VydmVyL3RyYWNlcG9pbnQuY2MKaW5kZXgg MWI2ZTlkMDUyNzNlYTdhNzA5ZjE4ODA0NzNjMDcwYzU5MTY5ZGRkNS4uOWEwMGQxZjI3MmY5MDVj YWRiYzg3MjY1ZWQwYmUzZDg3ZjdiNTRkZiAxMDA2NDQKLS0tIGEvZ2Ric2VydmVyL3RyYWNlcG9p bnQuY2MKKysrIGIvZ2Ric2VydmVyL3RyYWNlcG9pbnQuY2MKQEAgLTEyODgsNyArMTI4OCw3IEBA IHN0cnVjdCB0cmFjZXBvaW50X2hpdF9jdHgKIHN0cnVjdCBmYXN0X3RyYWNlcG9pbnRfY3R4IDog cHVibGljIHRyYWNlcG9pbnRfaGl0X2N0eAogewogICBmYXN0X3RyYWNlcG9pbnRfY3R4ICh1bnNp Z25lZCBjaGFyICpfcmVncykKLSAgICA6IHJlZ2NhY2hlX2luaXR0ZWQgKDApLCByZWdzIChfcmVn cykKKyAgICA6IHJlZ2NhY2hlICgpLCByZWdzIChfcmVncykKICAgewogICB9CiAKQEAgLTEyOTYs OCArMTI5Niw3IEBAIHN0cnVjdCBmYXN0X3RyYWNlcG9pbnRfY3R4IDogcHVibGljIHRyYWNlcG9p bnRfaGl0X2N0eAogCiAgIC8qIFRoZSByZWdjYWNoZSBjb3JyZXNwb25kaW5nIHRvIHRoZSByZWdp c3RlcnMgc3RhdGUgYXQgdGhlIHRpbWUgb2YKICAgICAgdGhlIHRyYWNlcG9pbnQgaGl0LiAgSW5p dGlhbGl6ZWQgbGF6aWx5LCBmcm9tIFJFR1MuICAqLwotICBzdHJ1Y3QgcmVnY2FjaGUgcmVnY2Fj aGU7Ci0gIGludCByZWdjYWNoZV9pbml0dGVkOworICBzdGQ6Om9wdGlvbmFsPHN0cnVjdCByZWdj YWNoZT4gcmVnY2FjaGU7CiAKICAgLyogVGhlIGJ1ZmZlciBzcGFjZSBSRUdDQUNIRSBhYm92ZSB1 c2VzLiAgV2UgdXNlIGEgc2VwYXJhdGUgYnVmZmVyCiAgICAgIGluc3RlYWQgb2YgbGV0dGluZyB0 aGUgcmVnY2FjaGUgbWFsbG9jIGZvciBib3RoIHNpZ25hbCBzYWZldHkgYW5kCkBAIC00Njk1LDE1 ICs0Njk0LDE1IEBAIGZhc3RfdHJhY2Vwb2ludF9jdHg6OmdldF9yZWdjYWNoZSAoKQogewogICBj b25zdCBzdHJ1Y3QgdGFyZ2V0X2Rlc2MgKmlwYV90ZGVzYyA9IGdldF9pcGFfdGRlc2MgKGlwYV90 ZGVzY19pZHgpOwogCi0gIGlmICghdGhpcy0+cmVnY2FjaGVfaW5pdHRlZCkKKyAgaWYgKCF0aGlz LT5yZWdjYWNoZS5oYXNfdmFsdWUgKCkpCiAgICAgewotICAgICAgdGhpcy0+cmVnY2FjaGVfaW5p dHRlZCA9IDE7Ci0gICAgICBpbml0X3JlZ2lzdGVyX2NhY2hlICgmdGhpcy0+cmVnY2FjaGUsIGlw YV90ZGVzYywgdGhpcy0+cmVnc3BhY2UpOwotICAgICAgc3VwcGx5X3JlZ2Jsb2NrICgmdGhpcy0+ cmVnY2FjaGUsIG51bGxwdHIpOwotICAgICAgc3VwcGx5X2Zhc3RfdHJhY2Vwb2ludF9yZWdpc3Rl cnMgKCZ0aGlzLT5yZWdjYWNoZSwgdGhpcy0+cmVncyk7CisgICAgICB0aGlzLT5yZWdjYWNoZS5l bXBsYWNlIChpcGFfdGRlc2MsIHRoaXMtPnJlZ3NwYWNlKTsKKyAgICAgIHN1cHBseV9yZWdibG9j ayAoJnRoaXMtPnJlZ2NhY2hlLnZhbHVlICgpLCBudWxscHRyKTsKKyAgICAgIHN1cHBseV9mYXN0 X3RyYWNlcG9pbnRfcmVnaXN0ZXJzICgmdGhpcy0+cmVnY2FjaGUudmFsdWUgKCksCisJCQkJCXRo aXMtPnJlZ3MpOwogICAgIH0KIAotICByZXR1cm4gJnRoaXMtPnJlZ2NhY2hlOworICByZXR1cm4g JnRoaXMtPnJlZ2NhY2hlLnZhbHVlICgpOwogfQogCiBzdHJ1Y3QgcmVnY2FjaGUgKgpAQCAtNDcx MiwyMCArNDcxMSwxOSBAQCBzdGF0aWNfdHJhY2Vwb2ludF9jdHg6OmdldF9yZWdjYWNoZSAoKQog I2lmZGVmIEhBVkVfVVNUCiAgIGNvbnN0IHN0cnVjdCB0YXJnZXRfZGVzYyAqaXBhX3RkZXNjID0g Z2V0X2lwYV90ZGVzYyAoaXBhX3RkZXNjX2lkeCk7CiAKLSAgaWYgKCF0aGlzLT5yZWdjYWNoZV9p bml0dGVkKQorICBpZiAoIXRoaXMtPnJlZ2NhY2hlLmhhc192YWx1ZSAoKSkKICAgICB7Ci0gICAg ICB0aGlzLT5yZWdjYWNoZV9pbml0dGVkID0gMTsKLSAgICAgIGluaXRfcmVnaXN0ZXJfY2FjaGUg KCZ0aGlzLT5yZWdjYWNoZSwgaXBhX3RkZXNjLCB0aGlzLT5yZWdzcGFjZSk7Ci0gICAgICBzdXBw bHlfcmVnYmxvY2sgKCZ0aGlzLT5yZWdjYWNoZSwgbnVsbHB0cik7CisgICAgICB0aGlzLT5yZWdj YWNoZS5lbXBsYWNlIChpcGFfdGRlc2MsIHRoaXMtPnJlZ3NwYWNlKTsKKyAgICAgIHN1cHBseV9y ZWdibG9jayAoJnRoaXMtPnJlZ2NhY2hlLnZhbHVlICgpLCBudWxscHRyKTsKICAgICAgIC8qIFBh c3MgZG93biB0aGUgdHJhY2Vwb2ludCBhZGRyZXNzLCBiZWNhdXNlIFJFR1MgZG9lc24ndAogCSBp bmNsdWRlIHRoZSBQQywgYnV0IHdlIGtub3cgd2hhdCBpdCBtdXN0IGhhdmUgYmVlbi4gICovCi0g ICAgICBzdXBwbHlfc3RhdGljX3RyYWNlcG9pbnRfcmVnaXN0ZXJzICgmdGhpcy0+cmVnY2FjaGUs CisgICAgICBzdXBwbHlfc3RhdGljX3RyYWNlcG9pbnRfcmVnaXN0ZXJzICgmdGhpcy0+cmVnY2Fj aGUudmFsdWUgKCksCiAJCQkJCSAgKGNvbnN0IHVuc2lnbmVkIGNoYXIgKikKIAkJCQkJICB0aGlz LT5yZWdzLAogCQkJCQkgIHRoaXMtPnRwb2ludC0+YWRkcmVzcyk7CiAgICAgfQogCi0gIHJldHVy biAmdGhpcy0+cmVnY2FjaGU7CisgIHJldHVybiAmdGhpcy0+cmVnY2FjaGUudmFsdWUgKCk7CiAj ZWxzZQogICBnZGJfYXNzZXJ0X25vdF9yZWFjaGVkICgic3RhdGljIHRyYWNlcG9pbnQgZmVhdHVy ZSByZXF1aXJlcyBVU1QiKTsKICNlbmRpZgpAQCAtNDc3Myw3ICs0NzcxLDYgQEAgZG9fYWN0aW9u X2F0X3RyYWNlcG9pbnQgKHN0cnVjdCB0cmFjZXBvaW50X2hpdF9jdHggKmN0eCwKICAgICBjYXNl ICdSJzoKICAgICAgIHsKIAl1bnNpZ25lZCBjaGFyICpyZWdzcGFjZTsKLQlzdHJ1Y3QgcmVnY2Fj aGUgdHJlZ2NhY2hlOwogCWludCByZWdjYWNoZV9zaXplOwogCiAJdHJhY2VfZGVidWcgKCJXYW50 IHRvIGNvbGxlY3QgcmVnaXN0ZXJzIik7CkBAIC00NzkzLDggKzQ3OTAsNyBAQCBkb19hY3Rpb25f YXRfdHJhY2Vwb2ludCAoc3RydWN0IHRyYWNlcG9pbnRfaGl0X2N0eCAqY3R4LAogCiAJLyogV3Jh cCB0aGUgcmVnYmxvY2sgaW4gYSByZWdpc3RlciBjYWNoZSAoaW4gdGhlIHN0YWNrLCB3ZQogCSAg IGRvbid0IHdhbnQgdG8gbWFsbG9jIGhlcmUpLiAgKi8KLQlpbml0X3JlZ2lzdGVyX2NhY2hlICgm dHJlZ2NhY2hlLCBjb250ZXh0X3JlZ2NhY2hlLT50ZGVzYywKLQkJCSAgICAgcmVnc3BhY2UgKyAx KTsKKwlyZWdjYWNoZSB0cmVnY2FjaGUgKGNvbnRleHRfcmVnY2FjaGUtPnRkZXNjLCByZWdzcGFj ZSArIDEpOwogCiAJLyogQ29weSB0aGUgcmVnaXN0ZXIgZGF0YSB0byB0aGUgcmVnYmxvY2suICAq LwogCXRyZWdjYWNoZS5jb3B5X2Zyb20gKGNvbnRleHRfcmVnY2FjaGUpOwpAQCAtNTE5MCw3ICs1 MTg2LDYgQEAgZmV0Y2hfdHJhY2VmcmFtZV9yZWdpc3RlcnMgKGludCB0Zm51bSwgc3RydWN0IHJl Z2NhY2hlICpyZWdjYWNoZSwgaW50IHJlZ251bSkKIHN0YXRpYyBDT1JFX0FERFIKIHRyYWNlZnJh bWVfZ2V0X3BjIChzdHJ1Y3QgdHJhY2VmcmFtZSAqdGZyYW1lKQogewotICBzdHJ1Y3QgcmVnY2Fj aGUgcmVnY2FjaGU7CiAgIHVuc2lnbmVkIGNoYXIgKmRhdGFwdHI7CiAgIGNvbnN0IHN0cnVjdCB0 YXJnZXRfZGVzYyAqdGRlc2MgPSBjdXJyZW50X3RhcmdldF9kZXNjICgpOwogCkBAIC01MTk4LDcg KzUxOTMsNyBAQCB0cmFjZWZyYW1lX2dldF9wYyAoc3RydWN0IHRyYWNlZnJhbWUgKnRmcmFtZSkK ICAgaWYgKGRhdGFwdHIgPT0gTlVMTCkKICAgICByZXR1cm4gMDsKIAotICBpbml0X3JlZ2lzdGVy X2NhY2hlICgmcmVnY2FjaGUsIHRkZXNjLCBkYXRhcHRyKTsKKyAgcmVnY2FjaGUgcmVnY2FjaGUg KHRkZXNjLCBkYXRhcHRyKTsKICAgcmV0dXJuIHJlZ2NhY2hlX3JlYWRfcGMgKCZyZWdjYWNoZSk7 CiB9CiAKCi0tIAoyLjM0LjEKCkludGVsIERldXRzY2hsYW5kIEdtYkgNClJlZ2lzdGVyZWQgQWRk cmVzczogQW0gQ2FtcGVvbiAxMCwgODU1NzkgTmV1YmliZXJnLCBHZXJtYW55DQpUZWw6ICs0OSA4 OSA5OSA4ODUzLTAsIHd3dy5pbnRlbC5kZQ0KTWFuYWdpbmcgRGlyZWN0b3JzOiBTZWFuIEZlbm5l bGx5LCBKZWZmcmV5IFNjaG5laWRlcm1hbiwgVGlmZmFueSBEb29uIFNpbHZhDQpDaGFpcnBlcnNv biBvZiB0aGUgU3VwZXJ2aXNvcnkgQm9hcmQ6IE5pY29sZSBMYXUNClJlZ2lzdGVyZWQgT2ZmaWNl OiBNdW5pY2gNCkNvbW1lcmNpYWwgUmVnaXN0ZXI6IEFtdHNnZXJpY2h0IE11ZW5jaGVuIEhSQiAx ODY5MjgK