From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 476AFC64E75 for ; Thu, 26 Nov 2020 13:44:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id EEE9721D40 for ; Thu, 26 Nov 2020 13:44:45 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="irhFLR+D" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2391018AbgKZNom (ORCPT ); Thu, 26 Nov 2020 08:44:42 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58928 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2390880AbgKZNnP (ORCPT ); Thu, 26 Nov 2020 08:43:15 -0500 Received: from mail-wr1-x442.google.com (mail-wr1-x442.google.com [IPv6:2a00:1450:4864:20::442]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id F3D34C0617A7 for ; Thu, 26 Nov 2020 05:43:14 -0800 (PST) Received: by mail-wr1-x442.google.com with SMTP id 64so2174575wra.11 for ; Thu, 26 Nov 2020 05:43:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=jJ48BnAFuIYXRbLOjlTsHmoQNdzeeMH8+iEVcNp9LRw=; b=irhFLR+D7PHiZmn27CayKxpHC+pspRcPPxBdS39NIWI1a1AtvgPFGv1+GKKx7263iY OF6nv8G3JtBO5NxqtncSSzSt0O5Kxp54ywhxmA/qVsGyeNSpdfYQyURlg8Dll8XkVSuh 0GTu5Ok7Oll9qvpzpd+tL20UWO0nKxHiBJv9lGLVykcWC73tOgo4PbxN0U5XVazzA6KD 2TzPexCvYD2WiKh84ClrArAA8ixmghure9qvs8p6u/f+XIEVoBZwhRrl0PZnwO/RcbmE vO4xFDL7xwqjciD/I8NYHJ+PcUhxtnQbH3HtpfRiLn595SDbPYOnYvBQYqgx/b7nZh5w hHAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=jJ48BnAFuIYXRbLOjlTsHmoQNdzeeMH8+iEVcNp9LRw=; b=EpGnsTv4P9CbJ2xLERQV4bq2CmpmQwqzU9+/kskRFS5XKE+Jn+Pg3Sg3VwwoJsYmDj fRBoFnMr1dGzvtrURzHPLtawZYB2tgHgoKxoLBA0xJ4N5MlQRSjxWELoi6UetRk5/+cT Q0nHJlXYcJihlUUH15M8c7KJR1JJDjd2JdRqp21WgvRsNLQAd7/xydCQqx6f00mOcPLg T0esoW/5pR6poBvKKymovpT17MUwOIVtkDWlU9vsXYnupPzcpGoonbseRHvBaD85Uf2b Pzn3ikHZL5JOc0zs4l2TGaZ0PXVNU9r0CLDlSHXh/S4khDnHqf3hQYqB9+OiAeX4nlGv lmVg== X-Gm-Message-State: AOAM5319/j3vbaxhujE/ndMYEKDejBZfY7++xiSCfX6i9cHROpuhIDBa Ok531ODsAnFPpxRUmIhrRfZa4Q== X-Google-Smtp-Source: ABdhPJyBWPP7GLsGLVwS/IL9jApgh75kjijq4JKQlg1qMhleCsPjU6MQ3Ci3aAZZpO3cFw+MWjErbA== X-Received: by 2002:adf:f608:: with SMTP id t8mr4051594wrp.72.1606398193594; Thu, 26 Nov 2020 05:43:13 -0800 (PST) Received: from dell.default ([91.110.221.235]) by smtp.gmail.com with ESMTPSA id k205sm9275738wmk.4.2020.11.26.05.43.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Nov 2020 05:43:12 -0800 (PST) From: Lee Jones To: lee.jones@linaro.org Cc: linux-kernel@vger.kernel.org, Evan Quan , Alex Deucher , =?UTF-8?q?Christian=20K=C3=B6nig?= , David Airlie , Daniel Vetter , amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Subject: [PATCH 18/40] drm/amd/pm/powerplay/hwmgr/process_pptables_v1_0: Convert to proper kernel-doc format Date: Thu, 26 Nov 2020 13:42:18 +0000 Message-Id: <20201126134240.3214176-19-lee.jones@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201126134240.3214176-1-lee.jones@linaro.org> References: <20201126134240.3214176-1-lee.jones@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Fixes the following W=1 kernel build warning(s): drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:41: warning: Function parameter or member 'hwmgr' not described in 'set_hw_cap' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:41: warning: Function parameter or member 'setIt' not described in 'set_hw_cap' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:41: warning: Function parameter or member 'cap' not described in 'set_hw_cap' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:56: warning: Function parameter or member 'hwmgr' not described in 'set_platform_caps' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:56: warning: Function parameter or member 'powerplay_caps' not described in 'set_platform_caps' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:135: warning: Function parameter or member 'hwmgr' not described in 'get_powerplay_table' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:202: warning: Function parameter or member 'hwmgr' not described in 'get_platform_power_management_table' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:202: warning: Function parameter or member 'atom_ppm_table' not described in 'get_platform_power_management_table' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:246: warning: Function parameter or member 'hwmgr' not described in 'init_dpm_2_parameters' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:246: warning: Function parameter or member 'powerplay_table' not described in 'init_dpm_2_parameters' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:791: warning: Function parameter or member 'hwmgr' not described in 'init_clock_voltage_dependency' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:791: warning: Function parameter or member 'powerplay_table' not described in 'init_clock_voltage_dependency' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:911: warning: Function parameter or member 'hwmgr' not described in 'init_thermal_controller' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:911: warning: Function parameter or member 'powerplay_table' not described in 'init_thermal_controller' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:1121: warning: Function parameter or member 'hwmgr' not described in 'check_powerplay_tables' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:1121: warning: Function parameter or member 'powerplay_table' not described in 'check_powerplay_tables' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:1263: warning: Function parameter or member 'hwmgr' not described in 'make_classification_flags' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:1263: warning: Function parameter or member 'classification' not described in 'make_classification_flags' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:1263: warning: Function parameter or member 'classification2' not described in 'make_classification_flags' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:1370: warning: Function parameter or member 'hwmgr' not described in 'get_powerplay_table_entry_v1_0' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:1370: warning: Function parameter or member 'entry_index' not described in 'get_powerplay_table_entry_v1_0' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:1370: warning: Function parameter or member 'power_state' not described in 'get_powerplay_table_entry_v1_0' drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.c:1370: warning: Function parameter or member 'call_back_func' not described in 'get_powerplay_table_entry_v1_0' Cc: Evan Quan Cc: Alex Deucher Cc: "Christian König" Cc: David Airlie Cc: Daniel Vetter Cc: amd-gfx@lists.freedesktop.org Cc: dri-devel@lists.freedesktop.org Signed-off-by: Lee Jones --- .../powerplay/hwmgr/process_pptables_v1_0.c | 81 ++++++++++--------- 1 file changed, 41 insertions(+), 40 deletions(-) diff --git a/drivers/gpu/drm/amd/pm/powerplay/hwmgr/process_pptables_v1_0.c b/drivers/gpu/drm/amd/pm/powerplay/hwmgr/process_pptables_v1_0.c index 801a565026703..741e03ad5311f 100644 --- a/drivers/gpu/drm/amd/pm/powerplay/hwmgr/process_pptables_v1_0.c +++ b/drivers/gpu/drm/amd/pm/powerplay/hwmgr/process_pptables_v1_0.c @@ -32,10 +32,10 @@ #include "pptable_v1_0.h" /** - * Private Function used during initialization. - * @param hwmgr Pointer to the hardware manager. - * @param setIt A flag indication if the capability should be set (TRUE) or reset (FALSE). - * @param cap Which capability to set/reset. + * set_hw_cap - Private Function used during initialization. + * @hwmgr: Pointer to the hardware manager. + * @setIt: A flag indication if the capability should be set (TRUE) or reset (FALSE). + * @cap: Which capability to set/reset. */ static void set_hw_cap(struct pp_hwmgr *hwmgr, bool setIt, enum phm_platform_caps cap) { @@ -47,10 +47,10 @@ static void set_hw_cap(struct pp_hwmgr *hwmgr, bool setIt, enum phm_platform_cap /** - * Private Function used during initialization. - * @param hwmgr Pointer to the hardware manager. - * @param powerplay_caps the bit array (from BIOS) of capability bits. - * @exception the current implementation always returns 1. + * set_platform_caps - Private Function used during initialization. + * @hwmgr: Pointer to the hardware manager. + * @powerplay_caps: the bit array (from BIOS) of capability bits. + * Exception: the current implementation always returns 1. */ static int set_platform_caps(struct pp_hwmgr *hwmgr, uint32_t powerplay_caps) { @@ -128,7 +128,7 @@ static int set_platform_caps(struct pp_hwmgr *hwmgr, uint32_t powerplay_caps) return 0; } -/** +/* * Private Function to get the PowerPlay Table Address. */ static const void *get_powerplay_table(struct pp_hwmgr *hwmgr) @@ -191,10 +191,10 @@ static int get_vddc_lookup_table( } /** - * Private Function used during initialization. + * get_platform_power_management_table - Private Function used during initialization. * Initialize Platform Power Management Parameter table - * @param hwmgr Pointer to the hardware manager. - * @param atom_ppm_table Pointer to PPM table in VBIOS + * @hwmgr: Pointer to the hardware manager. + * @atom_ppm_table: Pointer to PPM table in VBIOS */ static int get_platform_power_management_table( struct pp_hwmgr *hwmgr, @@ -234,10 +234,10 @@ static int get_platform_power_management_table( } /** - * Private Function used during initialization. + * init_dpm_2_parameters - Private Function used during initialization. * Initialize TDP limits for DPM2 - * @param hwmgr Pointer to the hardware manager. - * @param powerplay_table Pointer to the PowerPlay Table. + * @hwmgr: Pointer to the hardware manager. + * @powerplay_table: Pointer to the PowerPlay Table. */ static int init_dpm_2_parameters( struct pp_hwmgr *hwmgr, @@ -779,10 +779,10 @@ static int get_gpio_table(struct pp_hwmgr *hwmgr, return 0; } /** - * Private Function used during initialization. + * init_clock_voltage_dependency - Private Function used during initialization. * Initialize clock voltage dependency - * @param hwmgr Pointer to the hardware manager. - * @param powerplay_table Pointer to the PowerPlay Table. + * @hwmgr: Pointer to the hardware manager. + * @powerplay_table: Pointer to the PowerPlay Table. */ static int init_clock_voltage_dependency( struct pp_hwmgr *hwmgr, @@ -871,15 +871,16 @@ static int init_clock_voltage_dependency( return result; } -/** Retrieves the (signed) Overdrive limits from VBIOS. +/** + * init_over_drive_limits - Retrieves the (signed) Overdrive limits from VBIOS. * The max engine clock, memory clock and max temperature come from the firmware info table. * * The information is placed into the platform descriptor. * - * @param hwmgr source of the VBIOS table and owner of the platform descriptor to be updated. - * @param powerplay_table the address of the PowerPlay table. + * @hwmgr: source of the VBIOS table and owner of the platform descriptor to be updated. + * @powerplay_table: the address of the PowerPlay table. * - * @return 1 as long as the firmware info table was present and of a supported version. + * Return: 1 as long as the firmware info table was present and of a supported version. */ static int init_over_drive_limits( struct pp_hwmgr *hwmgr, @@ -898,11 +899,11 @@ static int init_over_drive_limits( } /** - * Private Function used during initialization. + * init_thermal_controller - Private Function used during initialization. * Inspect the PowerPlay table for obvious signs of corruption. - * @param hwmgr Pointer to the hardware manager. - * @param powerplay_table Pointer to the PowerPlay Table. - * @exception This implementation always returns 1. + * @hwmgr: Pointer to the hardware manager. + * @powerplay_table: Pointer to the PowerPlay Table. + * Exception: This implementation always returns 1. */ static int init_thermal_controller( struct pp_hwmgr *hwmgr, @@ -1108,11 +1109,11 @@ static int init_thermal_controller( } /** - * Private Function used during initialization. + * check_powerplay_tables - Private Function used during initialization. * Inspect the PowerPlay table for obvious signs of corruption. - * @param hwmgr Pointer to the hardware manager. - * @param powerplay_table Pointer to the PowerPlay Table. - * @exception 2 if the powerplay table is incorrect. + * @hwmgr: Pointer to the hardware manager. + * @powerplay_table: Pointer to the PowerPlay Table. + * Exception: 2 if the powerplay table is incorrect. */ static int check_powerplay_tables( struct pp_hwmgr *hwmgr, @@ -1255,9 +1256,9 @@ int get_number_of_powerplay_table_entries_v1_0(struct pp_hwmgr *hwmgr) return (uint32_t)(state_arrays->ucNumEntries); } -/** -* Private function to convert flags stored in the BIOS to software flags in PowerPlay. -*/ +/* + * Private function to convert flags stored in the BIOS to software flags in PowerPlay. + */ static uint32_t make_classification_flags(struct pp_hwmgr *hwmgr, uint16_t classification, uint16_t classification2) { @@ -1356,13 +1357,13 @@ static int ppt_get_vce_state_table_entry_v1_0(struct pp_hwmgr *hwmgr, uint32_t i } /** -* Create a Power State out of an entry in the PowerPlay table. -* This function is called by the hardware back-end. -* @param hwmgr Pointer to the hardware manager. -* @param entry_index The index of the entry to be extracted from the table. -* @param power_state The address of the PowerState instance being created. -* @return -1 if the entry cannot be retrieved. -*/ + * get_powerplay_table_entry_v1_0 - Create a Power State out of an entry in the PowerPlay table. + * This function is called by the hardware back-end. + * @hwmgr: Pointer to the hardware manager. + * @entry_index: The index of the entry to be extracted from the table. + * @power_state: The address of the PowerState instance being created. + * Return: -1 if the entry cannot be retrieved. + */ int get_powerplay_table_entry_v1_0(struct pp_hwmgr *hwmgr, uint32_t entry_index, struct pp_power_state *power_state, int (*call_back_func)(struct pp_hwmgr *, void *, -- 2.25.1 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.5 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 667E8C63697 for ; Thu, 26 Nov 2020 13:43:40 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 1806021D40 for ; Thu, 26 Nov 2020 13:43:40 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="irhFLR+D" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 1806021D40 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linaro.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 430066E991; Thu, 26 Nov 2020 13:43:21 +0000 (UTC) Received: from mail-wr1-x444.google.com (mail-wr1-x444.google.com [IPv6:2a00:1450:4864:20::444]) by gabe.freedesktop.org (Postfix) with ESMTPS id 899456E948 for ; Thu, 26 Nov 2020 13:43:15 +0000 (UTC) Received: by mail-wr1-x444.google.com with SMTP id m6so2185060wrg.7 for ; Thu, 26 Nov 2020 05:43:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=jJ48BnAFuIYXRbLOjlTsHmoQNdzeeMH8+iEVcNp9LRw=; b=irhFLR+D7PHiZmn27CayKxpHC+pspRcPPxBdS39NIWI1a1AtvgPFGv1+GKKx7263iY OF6nv8G3JtBO5NxqtncSSzSt0O5Kxp54ywhxmA/qVsGyeNSpdfYQyURlg8Dll8XkVSuh 0GTu5Ok7Oll9qvpzpd+tL20UWO0nKxHiBJv9lGLVykcWC73tOgo4PbxN0U5XVazzA6KD 2TzPexCvYD2WiKh84ClrArAA8ixmghure9qvs8p6u/f+XIEVoBZwhRrl0PZnwO/RcbmE vO4xFDL7xwqjciD/I8NYHJ+PcUhxtnQbH3HtpfRiLn595SDbPYOnYvBQYqgx/b7nZh5w hHAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=jJ48BnAFuIYXRbLOjlTsHmoQNdzeeMH8+iEVcNp9LRw=; b=Ve6SUElk7Yk14Hvddi5eagEWghbbq2sydu8fBhZcu2MQkyja4YS/epTkjq7IenQ8FN aHVkxj0SEmYMM2n2+0jYElZdl6Myy3e+Pf8/0KO1R2+8htmqUTtBzfU7ol19oRvm+mQb iINm5XHM2+0WfzCDsfUZF50hZ9lSHrqFF0zGKb9fIMLSFQZEoREyBPPW2TsBPhha+E/w 1SQdAhx64o74wND5oFttt4gDyZXi7zOtl4F/5vvQZeu6iKx01iSMal4APPx/CvWdoLTS boSVmPVLh5L0UoG3N7ueC5YsBnHOr5o1QbqkzAo81Ctnn+GNsely3HeCdrpzeg8NXVpK 5l6g== X-Gm-Message-State: AOAM530FS29NevPrRw/XwgRqsr5FJdMHXIF2Bqm1IJLm+7uaJfo6omHX Wj1XfLdVPBh3Rc3rU5AV97W9UQ== X-Google-Smtp-Source: ABdhPJyBWPP7GLsGLVwS/IL9jApgh75kjijq4JKQlg1qMhleCsPjU6MQ3Ci3aAZZpO3cFw+MWjErbA== X-Received: by 2002:adf:f608:: with SMTP id t8mr4051594wrp.72.1606398193594; Thu, 26 Nov 2020 05:43:13 -0800 (PST) Received: from dell.default ([91.110.221.235]) by smtp.gmail.com with ESMTPSA id k205sm9275738wmk.4.2020.11.26.05.43.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Nov 2020 05:43:12 -0800 (PST) From: Lee Jones To: lee.jones@linaro.org Subject: [PATCH 18/40] drm/amd/pm/powerplay/hwmgr/process_pptables_v1_0: Convert to proper kernel-doc format Date: Thu, 26 Nov 2020 13:42:18 +0000 Message-Id: <20201126134240.3214176-19-lee.jones@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201126134240.3214176-1-lee.jones@linaro.org> References: <20201126134240.3214176-1-lee.jones@linaro.org> MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: David Airlie , linux-kernel@vger.kernel.org, amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, Alex Deucher , Evan Quan , =?UTF-8?q?Christian=20K=C3=B6nig?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Rml4ZXMgdGhlIGZvbGxvd2luZyBXPTEga2VybmVsIGJ1aWxkIHdhcm5pbmcocyk6CgogZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vcG0vcG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJs ZXNfdjFfMC5jOjQxOiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdod21n cicgbm90IGRlc2NyaWJlZCBpbiAnc2V0X2h3X2NhcCcKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYzo0MTogd2Fy bmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAnc2V0SXQnIG5vdCBkZXNjcmliZWQg aW4gJ3NldF9od19jYXAnCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9wbS9wb3dlcnBs YXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8wLmM6NDE6IHdhcm5pbmc6IEZ1bmN0aW9uIHBh cmFtZXRlciBvciBtZW1iZXIgJ2NhcCcgbm90IGRlc2NyaWJlZCBpbiAnc2V0X2h3X2NhcCcKIGRy aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3Bw dGFibGVzX3YxXzAuYzo1Njogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAn aHdtZ3InIG5vdCBkZXNjcmliZWQgaW4gJ3NldF9wbGF0Zm9ybV9jYXBzJwogZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvLi4vcG0vcG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJsZXNfdjFf MC5jOjU2OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdwb3dlcnBsYXlf Y2Fwcycgbm90IGRlc2NyaWJlZCBpbiAnc2V0X3BsYXRmb3JtX2NhcHMnCiBkcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS8uLi9wbS9wb3dlcnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8w LmM6MTM1OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdod21ncicgbm90 IGRlc2NyaWJlZCBpbiAnZ2V0X3Bvd2VycGxheV90YWJsZScKIGRyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYzoyMDI6 IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2h3bWdyJyBub3QgZGVzY3Jp YmVkIGluICdnZXRfcGxhdGZvcm1fcG93ZXJfbWFuYWdlbWVudF90YWJsZScKIGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3Yx XzAuYzoyMDI6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2F0b21fcHBt X3RhYmxlJyBub3QgZGVzY3JpYmVkIGluICdnZXRfcGxhdGZvcm1fcG93ZXJfbWFuYWdlbWVudF90 YWJsZScKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9w cm9jZXNzX3BwdGFibGVzX3YxXzAuYzoyNDY6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBv ciBtZW1iZXIgJ2h3bWdyJyBub3QgZGVzY3JpYmVkIGluICdpbml0X2RwbV8yX3BhcmFtZXRlcnMn CiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9wbS9wb3dlcnBsYXkvaHdtZ3IvcHJvY2Vz c19wcHRhYmxlc192MV8wLmM6MjQ2OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVt YmVyICdwb3dlcnBsYXlfdGFibGUnIG5vdCBkZXNjcmliZWQgaW4gJ2luaXRfZHBtXzJfcGFyYW1l dGVycycKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9w cm9jZXNzX3BwdGFibGVzX3YxXzAuYzo3OTE6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBv ciBtZW1iZXIgJ2h3bWdyJyBub3QgZGVzY3JpYmVkIGluICdpbml0X2Nsb2NrX3ZvbHRhZ2VfZGVw ZW5kZW5jeScKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21n ci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYzo3OTE6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRl ciBvciBtZW1iZXIgJ3Bvd2VycGxheV90YWJsZScgbm90IGRlc2NyaWJlZCBpbiAnaW5pdF9jbG9j a192b2x0YWdlX2RlcGVuZGVuY3knCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9wbS9w b3dlcnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8wLmM6OTExOiB3YXJuaW5nOiBGdW5j dGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdod21ncicgbm90IGRlc2NyaWJlZCBpbiAnaW5pdF90 aGVybWFsX2NvbnRyb2xsZXInCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9wbS9wb3dl cnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8wLmM6OTExOiB3YXJuaW5nOiBGdW5jdGlv biBwYXJhbWV0ZXIgb3IgbWVtYmVyICdwb3dlcnBsYXlfdGFibGUnIG5vdCBkZXNjcmliZWQgaW4g J2luaXRfdGhlcm1hbF9jb250cm9sbGVyJwogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4v cG0vcG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJsZXNfdjFfMC5jOjExMjE6IHdhcm5pbmc6 IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2h3bWdyJyBub3QgZGVzY3JpYmVkIGluICdj aGVja19wb3dlcnBsYXlfdGFibGVzJwogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vcG0v cG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJsZXNfdjFfMC5jOjExMjE6IHdhcm5pbmc6IEZ1 bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ3Bvd2VycGxheV90YWJsZScgbm90IGRlc2NyaWJl ZCBpbiAnY2hlY2tfcG93ZXJwbGF5X3RhYmxlcycKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYzoxMjYzOiB3YXJu aW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdod21ncicgbm90IGRlc2NyaWJlZCBp biAnbWFrZV9jbGFzc2lmaWNhdGlvbl9mbGFncycKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYzoxMjYzOiB3YXJu aW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdjbGFzc2lmaWNhdGlvbicgbm90IGRl c2NyaWJlZCBpbiAnbWFrZV9jbGFzc2lmaWNhdGlvbl9mbGFncycKIGRyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYzox MjYzOiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdjbGFzc2lmaWNhdGlv bjInIG5vdCBkZXNjcmliZWQgaW4gJ21ha2VfY2xhc3NpZmljYXRpb25fZmxhZ3MnCiBkcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9wbS9wb3dlcnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxl c192MV8wLmM6MTM3MDogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAnaHdt Z3InIG5vdCBkZXNjcmliZWQgaW4gJ2dldF9wb3dlcnBsYXlfdGFibGVfZW50cnlfdjFfMCcKIGRy aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3Bw dGFibGVzX3YxXzAuYzoxMzcwOiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVy ICdlbnRyeV9pbmRleCcgbm90IGRlc2NyaWJlZCBpbiAnZ2V0X3Bvd2VycGxheV90YWJsZV9lbnRy eV92MV8wJwogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vcG0vcG93ZXJwbGF5L2h3bWdy L3Byb2Nlc3NfcHB0YWJsZXNfdjFfMC5jOjEzNzA6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRl ciBvciBtZW1iZXIgJ3Bvd2VyX3N0YXRlJyBub3QgZGVzY3JpYmVkIGluICdnZXRfcG93ZXJwbGF5 X3RhYmxlX2VudHJ5X3YxXzAnCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9wbS9wb3dl cnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8wLmM6MTM3MDogd2FybmluZzogRnVuY3Rp b24gcGFyYW1ldGVyIG9yIG1lbWJlciAnY2FsbF9iYWNrX2Z1bmMnIG5vdCBkZXNjcmliZWQgaW4g J2dldF9wb3dlcnBsYXlfdGFibGVfZW50cnlfdjFfMCcKCkNjOiBFdmFuIFF1YW4gPGV2YW4ucXVh bkBhbWQuY29tPgpDYzogQWxleCBEZXVjaGVyIDxhbGV4YW5kZXIuZGV1Y2hlckBhbWQuY29tPgpD YzogIkNocmlzdGlhbiBLw7ZuaWciIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+CkNjOiBEYXZp ZCBBaXJsaWUgPGFpcmxpZWRAbGludXguaWU+CkNjOiBEYW5pZWwgVmV0dGVyIDxkYW5pZWxAZmZ3 bGwuY2g+CkNjOiBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpTaWduZWQtb2ZmLWJ5OiBMZWUgSm9uZXMgPGxlZS5qb25lc0Bs aW5hcm8ub3JnPgotLS0KIC4uLi9wb3dlcnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8w LmMgICB8IDgxICsrKysrKysrKystLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0MSBpbnNlcnRp b25zKCspLCA0MCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1k L3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYyBiL2RyaXZlcnMvZ3B1 L2RybS9hbWQvcG0vcG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJsZXNfdjFfMC5jCmluZGV4 IDgwMWE1NjUwMjY3MDMuLjc0MWUwM2FkNTMxMWYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvcG0vcG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJsZXNfdjFfMC5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9hbWQvcG0vcG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJsZXNfdjFf MC5jCkBAIC0zMiwxMCArMzIsMTAgQEAKICNpbmNsdWRlICJwcHRhYmxlX3YxXzAuaCIKIAogLyoq Ci0gKiBQcml2YXRlIEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uLgotICogQHBh cmFtIGh3bWdyIFBvaW50ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCi0gKiBAcGFyYW0gc2V0 SXQgQSBmbGFnIGluZGljYXRpb24gaWYgdGhlIGNhcGFiaWxpdHkgc2hvdWxkIGJlIHNldCAoVFJV RSkgb3IgcmVzZXQgKEZBTFNFKS4KLSAqIEBwYXJhbSBjYXAgV2hpY2ggY2FwYWJpbGl0eSB0byBz ZXQvcmVzZXQuCisgKiBzZXRfaHdfY2FwIC0gUHJpdmF0ZSBGdW5jdGlvbiB1c2VkIGR1cmluZyBp bml0aWFsaXphdGlvbi4KKyAqIEBod21ncjogUG9pbnRlciB0byB0aGUgaGFyZHdhcmUgbWFuYWdl ci4KKyAqIEBzZXRJdDogQSBmbGFnIGluZGljYXRpb24gaWYgdGhlIGNhcGFiaWxpdHkgc2hvdWxk IGJlIHNldCAoVFJVRSkgb3IgcmVzZXQgKEZBTFNFKS4KKyAqIEBjYXA6IFdoaWNoIGNhcGFiaWxp dHkgdG8gc2V0L3Jlc2V0LgogICovCiBzdGF0aWMgdm9pZCBzZXRfaHdfY2FwKHN0cnVjdCBwcF9o d21nciAqaHdtZ3IsIGJvb2wgc2V0SXQsIGVudW0gcGhtX3BsYXRmb3JtX2NhcHMgY2FwKQogewpA QCAtNDcsMTAgKzQ3LDEwIEBAIHN0YXRpYyB2b2lkIHNldF9od19jYXAoc3RydWN0IHBwX2h3bWdy ICpod21nciwgYm9vbCBzZXRJdCwgZW51bSBwaG1fcGxhdGZvcm1fY2FwCiAKIAogLyoqCi0gKiBQ cml2YXRlIEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uLgotICogQHBhcmFtIGh3 bWdyIFBvaW50ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCi0gKiBAcGFyYW0gcG93ZXJwbGF5 X2NhcHMgdGhlIGJpdCBhcnJheSAoZnJvbSBCSU9TKSBvZiBjYXBhYmlsaXR5IGJpdHMuCi0gKiBA ZXhjZXB0aW9uIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIGFsd2F5cyByZXR1cm5zIDEuCisg KiBzZXRfcGxhdGZvcm1fY2FwcyAtIFByaXZhdGUgRnVuY3Rpb24gdXNlZCBkdXJpbmcgaW5pdGlh bGl6YXRpb24uCisgKiBAaHdtZ3I6IFBvaW50ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCisg KiBAcG93ZXJwbGF5X2NhcHM6IHRoZSBiaXQgYXJyYXkgKGZyb20gQklPUykgb2YgY2FwYWJpbGl0 eSBiaXRzLgorICogRXhjZXB0aW9uOiAgdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gYWx3YXlz IHJldHVybnMgMS4KICAqLwogc3RhdGljIGludCBzZXRfcGxhdGZvcm1fY2FwcyhzdHJ1Y3QgcHBf aHdtZ3IgKmh3bWdyLCB1aW50MzJfdCBwb3dlcnBsYXlfY2FwcykKIHsKQEAgLTEyOCw3ICsxMjgs NyBAQCBzdGF0aWMgaW50IHNldF9wbGF0Zm9ybV9jYXBzKHN0cnVjdCBwcF9od21nciAqaHdtZ3Is IHVpbnQzMl90IHBvd2VycGxheV9jYXBzKQogCXJldHVybiAwOwogfQogCi0vKioKKy8qCiAgKiBQ cml2YXRlIEZ1bmN0aW9uIHRvIGdldCB0aGUgUG93ZXJQbGF5IFRhYmxlIEFkZHJlc3MuCiAgKi8K IHN0YXRpYyBjb25zdCB2b2lkICpnZXRfcG93ZXJwbGF5X3RhYmxlKHN0cnVjdCBwcF9od21nciAq aHdtZ3IpCkBAIC0xOTEsMTAgKzE5MSwxMCBAQCBzdGF0aWMgaW50IGdldF92ZGRjX2xvb2t1cF90 YWJsZSgKIH0KIAogLyoqCi0gKiBQcml2YXRlIEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxp emF0aW9uLgorICogZ2V0X3BsYXRmb3JtX3Bvd2VyX21hbmFnZW1lbnRfdGFibGUgLSBQcml2YXRl IEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uLgogICogSW5pdGlhbGl6ZSBQbGF0 Zm9ybSBQb3dlciBNYW5hZ2VtZW50IFBhcmFtZXRlciB0YWJsZQotICogQHBhcmFtIGh3bWdyIFBv aW50ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCi0gKiBAcGFyYW0gYXRvbV9wcG1fdGFibGUg UG9pbnRlciB0byBQUE0gdGFibGUgaW4gVkJJT1MKKyAqIEBod21ncjogUG9pbnRlciB0byB0aGUg aGFyZHdhcmUgbWFuYWdlci4KKyAqIEBhdG9tX3BwbV90YWJsZTogUG9pbnRlciB0byBQUE0gdGFi bGUgaW4gVkJJT1MKICAqLwogc3RhdGljIGludCBnZXRfcGxhdGZvcm1fcG93ZXJfbWFuYWdlbWVu dF90YWJsZSgKIAkJc3RydWN0IHBwX2h3bWdyICpod21nciwKQEAgLTIzNCwxMCArMjM0LDEwIEBA IHN0YXRpYyBpbnQgZ2V0X3BsYXRmb3JtX3Bvd2VyX21hbmFnZW1lbnRfdGFibGUoCiB9CiAKIC8q KgotICogUHJpdmF0ZSBGdW5jdGlvbiB1c2VkIGR1cmluZyBpbml0aWFsaXphdGlvbi4KKyAqIGlu aXRfZHBtXzJfcGFyYW1ldGVycyAtIFByaXZhdGUgRnVuY3Rpb24gdXNlZCBkdXJpbmcgaW5pdGlh bGl6YXRpb24uCiAgKiBJbml0aWFsaXplIFREUCBsaW1pdHMgZm9yIERQTTIKLSAqIEBwYXJhbSBo d21nciBQb2ludGVyIHRvIHRoZSBoYXJkd2FyZSBtYW5hZ2VyLgotICogQHBhcmFtIHBvd2VycGxh eV90YWJsZSBQb2ludGVyIHRvIHRoZSBQb3dlclBsYXkgVGFibGUuCisgKiBAaHdtZ3I6IFBvaW50 ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCisgKiBAcG93ZXJwbGF5X3RhYmxlOiBQb2ludGVy IHRvIHRoZSBQb3dlclBsYXkgVGFibGUuCiAgKi8KIHN0YXRpYyBpbnQgaW5pdF9kcG1fMl9wYXJh bWV0ZXJzKAogCQlzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLApAQCAtNzc5LDEwICs3NzksMTAgQEAg c3RhdGljIGludCBnZXRfZ3Bpb190YWJsZShzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLAogCXJldHVy biAwOwogfQogLyoqCi0gKiBQcml2YXRlIEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxpemF0 aW9uLgorICogaW5pdF9jbG9ja192b2x0YWdlX2RlcGVuZGVuY3kgLSBQcml2YXRlIEZ1bmN0aW9u IHVzZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uLgogICogSW5pdGlhbGl6ZSBjbG9jayB2b2x0YWdl IGRlcGVuZGVuY3kKLSAqIEBwYXJhbSBod21nciBQb2ludGVyIHRvIHRoZSBoYXJkd2FyZSBtYW5h Z2VyLgotICogQHBhcmFtIHBvd2VycGxheV90YWJsZSBQb2ludGVyIHRvIHRoZSBQb3dlclBsYXkg VGFibGUuCisgKiBAaHdtZ3I6IFBvaW50ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCisgKiBA cG93ZXJwbGF5X3RhYmxlOiBQb2ludGVyIHRvIHRoZSBQb3dlclBsYXkgVGFibGUuCiAgKi8KIHN0 YXRpYyBpbnQgaW5pdF9jbG9ja192b2x0YWdlX2RlcGVuZGVuY3koCiAJCXN0cnVjdCBwcF9od21n ciAqaHdtZ3IsCkBAIC04NzEsMTUgKzg3MSwxNiBAQCBzdGF0aWMgaW50IGluaXRfY2xvY2tfdm9s dGFnZV9kZXBlbmRlbmN5KAogCXJldHVybiByZXN1bHQ7CiB9CiAKLS8qKiBSZXRyaWV2ZXMgdGhl IChzaWduZWQpIE92ZXJkcml2ZSBsaW1pdHMgZnJvbSBWQklPUy4KKy8qKgorICogaW5pdF9vdmVy X2RyaXZlX2xpbWl0cyAtIFJldHJpZXZlcyB0aGUgKHNpZ25lZCkgT3ZlcmRyaXZlIGxpbWl0cyBm cm9tIFZCSU9TLgogICogVGhlIG1heCBlbmdpbmUgY2xvY2ssIG1lbW9yeSBjbG9jayBhbmQgbWF4 IHRlbXBlcmF0dXJlIGNvbWUgZnJvbSB0aGUgZmlybXdhcmUgaW5mbyB0YWJsZS4KICAqCiAgKiBU aGUgaW5mb3JtYXRpb24gaXMgcGxhY2VkIGludG8gdGhlIHBsYXRmb3JtIGRlc2NyaXB0b3IuCiAg KgotICogQHBhcmFtIGh3bWdyIHNvdXJjZSBvZiB0aGUgVkJJT1MgdGFibGUgYW5kIG93bmVyIG9m IHRoZSBwbGF0Zm9ybSBkZXNjcmlwdG9yIHRvIGJlIHVwZGF0ZWQuCi0gKiBAcGFyYW0gcG93ZXJw bGF5X3RhYmxlIHRoZSBhZGRyZXNzIG9mIHRoZSBQb3dlclBsYXkgdGFibGUuCisgKiBAaHdtZ3I6 IHNvdXJjZSBvZiB0aGUgVkJJT1MgdGFibGUgYW5kIG93bmVyIG9mIHRoZSBwbGF0Zm9ybSBkZXNj cmlwdG9yIHRvIGJlIHVwZGF0ZWQuCisgKiBAcG93ZXJwbGF5X3RhYmxlOiB0aGUgYWRkcmVzcyBv ZiB0aGUgUG93ZXJQbGF5IHRhYmxlLgogICoKLSAqIEByZXR1cm4gMSBhcyBsb25nIGFzIHRoZSBm aXJtd2FyZSBpbmZvIHRhYmxlIHdhcyBwcmVzZW50IGFuZCBvZiBhIHN1cHBvcnRlZCB2ZXJzaW9u LgorICogUmV0dXJuOiAxIGFzIGxvbmcgYXMgdGhlIGZpcm13YXJlIGluZm8gdGFibGUgd2FzIHBy ZXNlbnQgYW5kIG9mIGEgc3VwcG9ydGVkIHZlcnNpb24uCiAgKi8KIHN0YXRpYyBpbnQgaW5pdF9v dmVyX2RyaXZlX2xpbWl0cygKIAkJc3RydWN0IHBwX2h3bWdyICpod21nciwKQEAgLTg5OCwxMSAr ODk5LDExIEBAIHN0YXRpYyBpbnQgaW5pdF9vdmVyX2RyaXZlX2xpbWl0cygKIH0KIAogLyoqCi0g KiBQcml2YXRlIEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uLgorICogaW5pdF90 aGVybWFsX2NvbnRyb2xsZXIgLSBQcml2YXRlIEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxp emF0aW9uLgogICogSW5zcGVjdCB0aGUgUG93ZXJQbGF5IHRhYmxlIGZvciBvYnZpb3VzIHNpZ25z IG9mIGNvcnJ1cHRpb24uCi0gKiBAcGFyYW0gaHdtZ3IgUG9pbnRlciB0byB0aGUgaGFyZHdhcmUg bWFuYWdlci4KLSAqIEBwYXJhbSBwb3dlcnBsYXlfdGFibGUgUG9pbnRlciB0byB0aGUgUG93ZXJQ bGF5IFRhYmxlLgotICogQGV4Y2VwdGlvbiBUaGlzIGltcGxlbWVudGF0aW9uIGFsd2F5cyByZXR1 cm5zIDEuCisgKiBAaHdtZ3I6IFBvaW50ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCisgKiBA cG93ZXJwbGF5X3RhYmxlOiBQb2ludGVyIHRvIHRoZSBQb3dlclBsYXkgVGFibGUuCisgKiBFeGNl cHRpb246ICBUaGlzIGltcGxlbWVudGF0aW9uIGFsd2F5cyByZXR1cm5zIDEuCiAgKi8KIHN0YXRp YyBpbnQgaW5pdF90aGVybWFsX2NvbnRyb2xsZXIoCiAJCXN0cnVjdCBwcF9od21nciAqaHdtZ3Is CkBAIC0xMTA4LDExICsxMTA5LDExIEBAIHN0YXRpYyBpbnQgaW5pdF90aGVybWFsX2NvbnRyb2xs ZXIoCiB9CiAKIC8qKgotICogUHJpdmF0ZSBGdW5jdGlvbiB1c2VkIGR1cmluZyBpbml0aWFsaXph dGlvbi4KKyAqIGNoZWNrX3Bvd2VycGxheV90YWJsZXMgLSBQcml2YXRlIEZ1bmN0aW9uIHVzZWQg ZHVyaW5nIGluaXRpYWxpemF0aW9uLgogICogSW5zcGVjdCB0aGUgUG93ZXJQbGF5IHRhYmxlIGZv ciBvYnZpb3VzIHNpZ25zIG9mIGNvcnJ1cHRpb24uCi0gKiBAcGFyYW0gaHdtZ3IgUG9pbnRlciB0 byB0aGUgaGFyZHdhcmUgbWFuYWdlci4KLSAqIEBwYXJhbSBwb3dlcnBsYXlfdGFibGUgUG9pbnRl ciB0byB0aGUgUG93ZXJQbGF5IFRhYmxlLgotICogQGV4Y2VwdGlvbiAyIGlmIHRoZSBwb3dlcnBs YXkgdGFibGUgaXMgaW5jb3JyZWN0LgorICogQGh3bWdyOiBQb2ludGVyIHRvIHRoZSBoYXJkd2Fy ZSBtYW5hZ2VyLgorICogQHBvd2VycGxheV90YWJsZTogUG9pbnRlciB0byB0aGUgUG93ZXJQbGF5 IFRhYmxlLgorICogRXhjZXB0aW9uOiAgMiBpZiB0aGUgcG93ZXJwbGF5IHRhYmxlIGlzIGluY29y cmVjdC4KICAqLwogc3RhdGljIGludCBjaGVja19wb3dlcnBsYXlfdGFibGVzKAogCQlzdHJ1Y3Qg cHBfaHdtZ3IgKmh3bWdyLApAQCAtMTI1NSw5ICsxMjU2LDkgQEAgaW50IGdldF9udW1iZXJfb2Zf cG93ZXJwbGF5X3RhYmxlX2VudHJpZXNfdjFfMChzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyKQogCXJl dHVybiAodWludDMyX3QpKHN0YXRlX2FycmF5cy0+dWNOdW1FbnRyaWVzKTsKIH0KIAotLyoqCi0q IFByaXZhdGUgZnVuY3Rpb24gdG8gY29udmVydCBmbGFncyBzdG9yZWQgaW4gdGhlIEJJT1MgdG8g c29mdHdhcmUgZmxhZ3MgaW4gUG93ZXJQbGF5LgotKi8KKy8qCisgKiBQcml2YXRlIGZ1bmN0aW9u IHRvIGNvbnZlcnQgZmxhZ3Mgc3RvcmVkIGluIHRoZSBCSU9TIHRvIHNvZnR3YXJlIGZsYWdzIGlu IFBvd2VyUGxheS4KKyAqLwogc3RhdGljIHVpbnQzMl90IG1ha2VfY2xhc3NpZmljYXRpb25fZmxh Z3Moc3RydWN0IHBwX2h3bWdyICpod21nciwKIAkJdWludDE2X3QgY2xhc3NpZmljYXRpb24sIHVp bnQxNl90IGNsYXNzaWZpY2F0aW9uMikKIHsKQEAgLTEzNTYsMTMgKzEzNTcsMTMgQEAgc3RhdGlj IGludCBwcHRfZ2V0X3ZjZV9zdGF0ZV90YWJsZV9lbnRyeV92MV8wKHN0cnVjdCBwcF9od21nciAq aHdtZ3IsIHVpbnQzMl90IGkKIH0KIAogLyoqCi0qIENyZWF0ZSBhIFBvd2VyIFN0YXRlIG91dCBv ZiBhbiBlbnRyeSBpbiB0aGUgUG93ZXJQbGF5IHRhYmxlLgotKiBUaGlzIGZ1bmN0aW9uIGlzIGNh bGxlZCBieSB0aGUgaGFyZHdhcmUgYmFjay1lbmQuCi0qIEBwYXJhbSBod21nciBQb2ludGVyIHRv IHRoZSBoYXJkd2FyZSBtYW5hZ2VyLgotKiBAcGFyYW0gZW50cnlfaW5kZXggVGhlIGluZGV4IG9m IHRoZSBlbnRyeSB0byBiZSBleHRyYWN0ZWQgZnJvbSB0aGUgdGFibGUuCi0qIEBwYXJhbSBwb3dl cl9zdGF0ZSBUaGUgYWRkcmVzcyBvZiB0aGUgUG93ZXJTdGF0ZSBpbnN0YW5jZSBiZWluZyBjcmVh dGVkLgotKiBAcmV0dXJuIC0xIGlmIHRoZSBlbnRyeSBjYW5ub3QgYmUgcmV0cmlldmVkLgotKi8K KyAqIGdldF9wb3dlcnBsYXlfdGFibGVfZW50cnlfdjFfMCAtIENyZWF0ZSBhIFBvd2VyIFN0YXRl IG91dCBvZiBhbiBlbnRyeSBpbiB0aGUgUG93ZXJQbGF5IHRhYmxlLgorICogVGhpcyBmdW5jdGlv biBpcyBjYWxsZWQgYnkgdGhlIGhhcmR3YXJlIGJhY2stZW5kLgorICogQGh3bWdyOiBQb2ludGVy IHRvIHRoZSBoYXJkd2FyZSBtYW5hZ2VyLgorICogQGVudHJ5X2luZGV4OiBUaGUgaW5kZXggb2Yg dGhlIGVudHJ5IHRvIGJlIGV4dHJhY3RlZCBmcm9tIHRoZSB0YWJsZS4KKyAqIEBwb3dlcl9zdGF0 ZTogVGhlIGFkZHJlc3Mgb2YgdGhlIFBvd2VyU3RhdGUgaW5zdGFuY2UgYmVpbmcgY3JlYXRlZC4K KyAqIFJldHVybjogLTEgaWYgdGhlIGVudHJ5IGNhbm5vdCBiZSByZXRyaWV2ZWQuCisgKi8KIGlu dCBnZXRfcG93ZXJwbGF5X3RhYmxlX2VudHJ5X3YxXzAoc3RydWN0IHBwX2h3bWdyICpod21nciwK IAkJdWludDMyX3QgZW50cnlfaW5kZXgsIHN0cnVjdCBwcF9wb3dlcl9zdGF0ZSAqcG93ZXJfc3Rh dGUsCiAJCWludCAoKmNhbGxfYmFja19mdW5jKShzdHJ1Y3QgcHBfaHdtZ3IgKiwgdm9pZCAqLAot LSAKMi4yNS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.5 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F2802C64E8A for ; Fri, 27 Nov 2020 10:14:40 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8F1E620674 for ; Fri, 27 Nov 2020 10:14:38 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="irhFLR+D" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8F1E620674 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linaro.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=amd-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id E5C416EB90; Fri, 27 Nov 2020 10:14:34 +0000 (UTC) Received: from mail-wr1-x443.google.com (mail-wr1-x443.google.com [IPv6:2a00:1450:4864:20::443]) by gabe.freedesktop.org (Postfix) with ESMTPS id 063E56E948 for ; Thu, 26 Nov 2020 13:43:15 +0000 (UTC) Received: by mail-wr1-x443.google.com with SMTP id r3so2214864wrt.2 for ; Thu, 26 Nov 2020 05:43:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=jJ48BnAFuIYXRbLOjlTsHmoQNdzeeMH8+iEVcNp9LRw=; b=irhFLR+D7PHiZmn27CayKxpHC+pspRcPPxBdS39NIWI1a1AtvgPFGv1+GKKx7263iY OF6nv8G3JtBO5NxqtncSSzSt0O5Kxp54ywhxmA/qVsGyeNSpdfYQyURlg8Dll8XkVSuh 0GTu5Ok7Oll9qvpzpd+tL20UWO0nKxHiBJv9lGLVykcWC73tOgo4PbxN0U5XVazzA6KD 2TzPexCvYD2WiKh84ClrArAA8ixmghure9qvs8p6u/f+XIEVoBZwhRrl0PZnwO/RcbmE vO4xFDL7xwqjciD/I8NYHJ+PcUhxtnQbH3HtpfRiLn595SDbPYOnYvBQYqgx/b7nZh5w hHAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=jJ48BnAFuIYXRbLOjlTsHmoQNdzeeMH8+iEVcNp9LRw=; b=Eav+P1H0jlOqJGkuVQtxRjNOshUg10O/jFRbv7wsgA0DAkLVtkXzIStN8YubW6KDx4 h3DTH5vhQ0PJ7uCb9BQWn22XrBUoMIOKgX1kd3OF8MOvENPvGO0oKBDkk1uNtH1LKfEO z3kV0WsJMSqVm71nUMFtz9LLQ6ORUz7ZEnZ6F8ZL4qlTSlAH7LCHsHcOk3D3OZgLauw+ YHNktihx9ANteXzoJsB+NtFhzhWEyd56ccvDU/cpsYRu80N2sqCAXC6nXhhNJjwYLXoQ G+Afdqhcuck4TZrRqLM5v7qgAbmKAAJUOILwKRy2hxktRYhvmvn/hz9KTArTvLCj2Kca GpLg== X-Gm-Message-State: AOAM531EKMoN4Tmcz+R2NH4uV3epy6RaWSmz7UQCnMqqgdnniaNbmZE9 9xJzJ2xgOXpdrBwach+iKntEjGgdR10QjKDV X-Google-Smtp-Source: ABdhPJyBWPP7GLsGLVwS/IL9jApgh75kjijq4JKQlg1qMhleCsPjU6MQ3Ci3aAZZpO3cFw+MWjErbA== X-Received: by 2002:adf:f608:: with SMTP id t8mr4051594wrp.72.1606398193594; Thu, 26 Nov 2020 05:43:13 -0800 (PST) Received: from dell.default ([91.110.221.235]) by smtp.gmail.com with ESMTPSA id k205sm9275738wmk.4.2020.11.26.05.43.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Nov 2020 05:43:12 -0800 (PST) From: Lee Jones To: lee.jones@linaro.org Subject: [PATCH 18/40] drm/amd/pm/powerplay/hwmgr/process_pptables_v1_0: Convert to proper kernel-doc format Date: Thu, 26 Nov 2020 13:42:18 +0000 Message-Id: <20201126134240.3214176-19-lee.jones@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201126134240.3214176-1-lee.jones@linaro.org> References: <20201126134240.3214176-1-lee.jones@linaro.org> MIME-Version: 1.0 X-Mailman-Approved-At: Fri, 27 Nov 2020 10:14:32 +0000 X-BeenThere: amd-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: David Airlie , linux-kernel@vger.kernel.org, amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, Daniel Vetter , Alex Deucher , Evan Quan , =?UTF-8?q?Christian=20K=C3=B6nig?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: amd-gfx-bounces@lists.freedesktop.org Sender: "amd-gfx" Rml4ZXMgdGhlIGZvbGxvd2luZyBXPTEga2VybmVsIGJ1aWxkIHdhcm5pbmcocyk6CgogZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vcG0vcG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJs ZXNfdjFfMC5jOjQxOiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdod21n cicgbm90IGRlc2NyaWJlZCBpbiAnc2V0X2h3X2NhcCcKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYzo0MTogd2Fy bmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAnc2V0SXQnIG5vdCBkZXNjcmliZWQg aW4gJ3NldF9od19jYXAnCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9wbS9wb3dlcnBs YXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8wLmM6NDE6IHdhcm5pbmc6IEZ1bmN0aW9uIHBh cmFtZXRlciBvciBtZW1iZXIgJ2NhcCcgbm90IGRlc2NyaWJlZCBpbiAnc2V0X2h3X2NhcCcKIGRy aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3Bw dGFibGVzX3YxXzAuYzo1Njogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAn aHdtZ3InIG5vdCBkZXNjcmliZWQgaW4gJ3NldF9wbGF0Zm9ybV9jYXBzJwogZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvLi4vcG0vcG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJsZXNfdjFf MC5jOjU2OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdwb3dlcnBsYXlf Y2Fwcycgbm90IGRlc2NyaWJlZCBpbiAnc2V0X3BsYXRmb3JtX2NhcHMnCiBkcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS8uLi9wbS9wb3dlcnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8w LmM6MTM1OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdod21ncicgbm90 IGRlc2NyaWJlZCBpbiAnZ2V0X3Bvd2VycGxheV90YWJsZScKIGRyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYzoyMDI6 IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2h3bWdyJyBub3QgZGVzY3Jp YmVkIGluICdnZXRfcGxhdGZvcm1fcG93ZXJfbWFuYWdlbWVudF90YWJsZScKIGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3Yx XzAuYzoyMDI6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2F0b21fcHBt X3RhYmxlJyBub3QgZGVzY3JpYmVkIGluICdnZXRfcGxhdGZvcm1fcG93ZXJfbWFuYWdlbWVudF90 YWJsZScKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9w cm9jZXNzX3BwdGFibGVzX3YxXzAuYzoyNDY6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBv ciBtZW1iZXIgJ2h3bWdyJyBub3QgZGVzY3JpYmVkIGluICdpbml0X2RwbV8yX3BhcmFtZXRlcnMn CiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9wbS9wb3dlcnBsYXkvaHdtZ3IvcHJvY2Vz c19wcHRhYmxlc192MV8wLmM6MjQ2OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVt YmVyICdwb3dlcnBsYXlfdGFibGUnIG5vdCBkZXNjcmliZWQgaW4gJ2luaXRfZHBtXzJfcGFyYW1l dGVycycKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9w cm9jZXNzX3BwdGFibGVzX3YxXzAuYzo3OTE6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBv ciBtZW1iZXIgJ2h3bWdyJyBub3QgZGVzY3JpYmVkIGluICdpbml0X2Nsb2NrX3ZvbHRhZ2VfZGVw ZW5kZW5jeScKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21n ci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYzo3OTE6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRl ciBvciBtZW1iZXIgJ3Bvd2VycGxheV90YWJsZScgbm90IGRlc2NyaWJlZCBpbiAnaW5pdF9jbG9j a192b2x0YWdlX2RlcGVuZGVuY3knCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9wbS9w b3dlcnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8wLmM6OTExOiB3YXJuaW5nOiBGdW5j dGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdod21ncicgbm90IGRlc2NyaWJlZCBpbiAnaW5pdF90 aGVybWFsX2NvbnRyb2xsZXInCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9wbS9wb3dl cnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8wLmM6OTExOiB3YXJuaW5nOiBGdW5jdGlv biBwYXJhbWV0ZXIgb3IgbWVtYmVyICdwb3dlcnBsYXlfdGFibGUnIG5vdCBkZXNjcmliZWQgaW4g J2luaXRfdGhlcm1hbF9jb250cm9sbGVyJwogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4v cG0vcG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJsZXNfdjFfMC5jOjExMjE6IHdhcm5pbmc6 IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2h3bWdyJyBub3QgZGVzY3JpYmVkIGluICdj aGVja19wb3dlcnBsYXlfdGFibGVzJwogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vcG0v cG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJsZXNfdjFfMC5jOjExMjE6IHdhcm5pbmc6IEZ1 bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ3Bvd2VycGxheV90YWJsZScgbm90IGRlc2NyaWJl ZCBpbiAnY2hlY2tfcG93ZXJwbGF5X3RhYmxlcycKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYzoxMjYzOiB3YXJu aW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdod21ncicgbm90IGRlc2NyaWJlZCBp biAnbWFrZV9jbGFzc2lmaWNhdGlvbl9mbGFncycKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYzoxMjYzOiB3YXJu aW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdjbGFzc2lmaWNhdGlvbicgbm90IGRl c2NyaWJlZCBpbiAnbWFrZV9jbGFzc2lmaWNhdGlvbl9mbGFncycKIGRyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYzox MjYzOiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdjbGFzc2lmaWNhdGlv bjInIG5vdCBkZXNjcmliZWQgaW4gJ21ha2VfY2xhc3NpZmljYXRpb25fZmxhZ3MnCiBkcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9wbS9wb3dlcnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxl c192MV8wLmM6MTM3MDogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAnaHdt Z3InIG5vdCBkZXNjcmliZWQgaW4gJ2dldF9wb3dlcnBsYXlfdGFibGVfZW50cnlfdjFfMCcKIGRy aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3Bw dGFibGVzX3YxXzAuYzoxMzcwOiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVy ICdlbnRyeV9pbmRleCcgbm90IGRlc2NyaWJlZCBpbiAnZ2V0X3Bvd2VycGxheV90YWJsZV9lbnRy eV92MV8wJwogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vcG0vcG93ZXJwbGF5L2h3bWdy L3Byb2Nlc3NfcHB0YWJsZXNfdjFfMC5jOjEzNzA6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRl ciBvciBtZW1iZXIgJ3Bvd2VyX3N0YXRlJyBub3QgZGVzY3JpYmVkIGluICdnZXRfcG93ZXJwbGF5 X3RhYmxlX2VudHJ5X3YxXzAnCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9wbS9wb3dl cnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8wLmM6MTM3MDogd2FybmluZzogRnVuY3Rp b24gcGFyYW1ldGVyIG9yIG1lbWJlciAnY2FsbF9iYWNrX2Z1bmMnIG5vdCBkZXNjcmliZWQgaW4g J2dldF9wb3dlcnBsYXlfdGFibGVfZW50cnlfdjFfMCcKCkNjOiBFdmFuIFF1YW4gPGV2YW4ucXVh bkBhbWQuY29tPgpDYzogQWxleCBEZXVjaGVyIDxhbGV4YW5kZXIuZGV1Y2hlckBhbWQuY29tPgpD YzogIkNocmlzdGlhbiBLw7ZuaWciIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+CkNjOiBEYXZp ZCBBaXJsaWUgPGFpcmxpZWRAbGludXguaWU+CkNjOiBEYW5pZWwgVmV0dGVyIDxkYW5pZWxAZmZ3 bGwuY2g+CkNjOiBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpTaWduZWQtb2ZmLWJ5OiBMZWUgSm9uZXMgPGxlZS5qb25lc0Bs aW5hcm8ub3JnPgotLS0KIC4uLi9wb3dlcnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8w LmMgICB8IDgxICsrKysrKysrKystLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0MSBpbnNlcnRp b25zKCspLCA0MCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1k L3BtL3Bvd2VycGxheS9od21nci9wcm9jZXNzX3BwdGFibGVzX3YxXzAuYyBiL2RyaXZlcnMvZ3B1 L2RybS9hbWQvcG0vcG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJsZXNfdjFfMC5jCmluZGV4 IDgwMWE1NjUwMjY3MDMuLjc0MWUwM2FkNTMxMWYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvcG0vcG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJsZXNfdjFfMC5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9hbWQvcG0vcG93ZXJwbGF5L2h3bWdyL3Byb2Nlc3NfcHB0YWJsZXNfdjFf MC5jCkBAIC0zMiwxMCArMzIsMTAgQEAKICNpbmNsdWRlICJwcHRhYmxlX3YxXzAuaCIKIAogLyoq Ci0gKiBQcml2YXRlIEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uLgotICogQHBh cmFtIGh3bWdyIFBvaW50ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCi0gKiBAcGFyYW0gc2V0 SXQgQSBmbGFnIGluZGljYXRpb24gaWYgdGhlIGNhcGFiaWxpdHkgc2hvdWxkIGJlIHNldCAoVFJV RSkgb3IgcmVzZXQgKEZBTFNFKS4KLSAqIEBwYXJhbSBjYXAgV2hpY2ggY2FwYWJpbGl0eSB0byBz ZXQvcmVzZXQuCisgKiBzZXRfaHdfY2FwIC0gUHJpdmF0ZSBGdW5jdGlvbiB1c2VkIGR1cmluZyBp bml0aWFsaXphdGlvbi4KKyAqIEBod21ncjogUG9pbnRlciB0byB0aGUgaGFyZHdhcmUgbWFuYWdl ci4KKyAqIEBzZXRJdDogQSBmbGFnIGluZGljYXRpb24gaWYgdGhlIGNhcGFiaWxpdHkgc2hvdWxk IGJlIHNldCAoVFJVRSkgb3IgcmVzZXQgKEZBTFNFKS4KKyAqIEBjYXA6IFdoaWNoIGNhcGFiaWxp dHkgdG8gc2V0L3Jlc2V0LgogICovCiBzdGF0aWMgdm9pZCBzZXRfaHdfY2FwKHN0cnVjdCBwcF9o d21nciAqaHdtZ3IsIGJvb2wgc2V0SXQsIGVudW0gcGhtX3BsYXRmb3JtX2NhcHMgY2FwKQogewpA QCAtNDcsMTAgKzQ3LDEwIEBAIHN0YXRpYyB2b2lkIHNldF9od19jYXAoc3RydWN0IHBwX2h3bWdy ICpod21nciwgYm9vbCBzZXRJdCwgZW51bSBwaG1fcGxhdGZvcm1fY2FwCiAKIAogLyoqCi0gKiBQ cml2YXRlIEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uLgotICogQHBhcmFtIGh3 bWdyIFBvaW50ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCi0gKiBAcGFyYW0gcG93ZXJwbGF5 X2NhcHMgdGhlIGJpdCBhcnJheSAoZnJvbSBCSU9TKSBvZiBjYXBhYmlsaXR5IGJpdHMuCi0gKiBA ZXhjZXB0aW9uIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIGFsd2F5cyByZXR1cm5zIDEuCisg KiBzZXRfcGxhdGZvcm1fY2FwcyAtIFByaXZhdGUgRnVuY3Rpb24gdXNlZCBkdXJpbmcgaW5pdGlh bGl6YXRpb24uCisgKiBAaHdtZ3I6IFBvaW50ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCisg KiBAcG93ZXJwbGF5X2NhcHM6IHRoZSBiaXQgYXJyYXkgKGZyb20gQklPUykgb2YgY2FwYWJpbGl0 eSBiaXRzLgorICogRXhjZXB0aW9uOiAgdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gYWx3YXlz IHJldHVybnMgMS4KICAqLwogc3RhdGljIGludCBzZXRfcGxhdGZvcm1fY2FwcyhzdHJ1Y3QgcHBf aHdtZ3IgKmh3bWdyLCB1aW50MzJfdCBwb3dlcnBsYXlfY2FwcykKIHsKQEAgLTEyOCw3ICsxMjgs NyBAQCBzdGF0aWMgaW50IHNldF9wbGF0Zm9ybV9jYXBzKHN0cnVjdCBwcF9od21nciAqaHdtZ3Is IHVpbnQzMl90IHBvd2VycGxheV9jYXBzKQogCXJldHVybiAwOwogfQogCi0vKioKKy8qCiAgKiBQ cml2YXRlIEZ1bmN0aW9uIHRvIGdldCB0aGUgUG93ZXJQbGF5IFRhYmxlIEFkZHJlc3MuCiAgKi8K IHN0YXRpYyBjb25zdCB2b2lkICpnZXRfcG93ZXJwbGF5X3RhYmxlKHN0cnVjdCBwcF9od21nciAq aHdtZ3IpCkBAIC0xOTEsMTAgKzE5MSwxMCBAQCBzdGF0aWMgaW50IGdldF92ZGRjX2xvb2t1cF90 YWJsZSgKIH0KIAogLyoqCi0gKiBQcml2YXRlIEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxp emF0aW9uLgorICogZ2V0X3BsYXRmb3JtX3Bvd2VyX21hbmFnZW1lbnRfdGFibGUgLSBQcml2YXRl IEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uLgogICogSW5pdGlhbGl6ZSBQbGF0 Zm9ybSBQb3dlciBNYW5hZ2VtZW50IFBhcmFtZXRlciB0YWJsZQotICogQHBhcmFtIGh3bWdyIFBv aW50ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCi0gKiBAcGFyYW0gYXRvbV9wcG1fdGFibGUg UG9pbnRlciB0byBQUE0gdGFibGUgaW4gVkJJT1MKKyAqIEBod21ncjogUG9pbnRlciB0byB0aGUg aGFyZHdhcmUgbWFuYWdlci4KKyAqIEBhdG9tX3BwbV90YWJsZTogUG9pbnRlciB0byBQUE0gdGFi bGUgaW4gVkJJT1MKICAqLwogc3RhdGljIGludCBnZXRfcGxhdGZvcm1fcG93ZXJfbWFuYWdlbWVu dF90YWJsZSgKIAkJc3RydWN0IHBwX2h3bWdyICpod21nciwKQEAgLTIzNCwxMCArMjM0LDEwIEBA IHN0YXRpYyBpbnQgZ2V0X3BsYXRmb3JtX3Bvd2VyX21hbmFnZW1lbnRfdGFibGUoCiB9CiAKIC8q KgotICogUHJpdmF0ZSBGdW5jdGlvbiB1c2VkIGR1cmluZyBpbml0aWFsaXphdGlvbi4KKyAqIGlu aXRfZHBtXzJfcGFyYW1ldGVycyAtIFByaXZhdGUgRnVuY3Rpb24gdXNlZCBkdXJpbmcgaW5pdGlh bGl6YXRpb24uCiAgKiBJbml0aWFsaXplIFREUCBsaW1pdHMgZm9yIERQTTIKLSAqIEBwYXJhbSBo d21nciBQb2ludGVyIHRvIHRoZSBoYXJkd2FyZSBtYW5hZ2VyLgotICogQHBhcmFtIHBvd2VycGxh eV90YWJsZSBQb2ludGVyIHRvIHRoZSBQb3dlclBsYXkgVGFibGUuCisgKiBAaHdtZ3I6IFBvaW50 ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCisgKiBAcG93ZXJwbGF5X3RhYmxlOiBQb2ludGVy IHRvIHRoZSBQb3dlclBsYXkgVGFibGUuCiAgKi8KIHN0YXRpYyBpbnQgaW5pdF9kcG1fMl9wYXJh bWV0ZXJzKAogCQlzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLApAQCAtNzc5LDEwICs3NzksMTAgQEAg c3RhdGljIGludCBnZXRfZ3Bpb190YWJsZShzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLAogCXJldHVy biAwOwogfQogLyoqCi0gKiBQcml2YXRlIEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxpemF0 aW9uLgorICogaW5pdF9jbG9ja192b2x0YWdlX2RlcGVuZGVuY3kgLSBQcml2YXRlIEZ1bmN0aW9u IHVzZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uLgogICogSW5pdGlhbGl6ZSBjbG9jayB2b2x0YWdl IGRlcGVuZGVuY3kKLSAqIEBwYXJhbSBod21nciBQb2ludGVyIHRvIHRoZSBoYXJkd2FyZSBtYW5h Z2VyLgotICogQHBhcmFtIHBvd2VycGxheV90YWJsZSBQb2ludGVyIHRvIHRoZSBQb3dlclBsYXkg VGFibGUuCisgKiBAaHdtZ3I6IFBvaW50ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCisgKiBA cG93ZXJwbGF5X3RhYmxlOiBQb2ludGVyIHRvIHRoZSBQb3dlclBsYXkgVGFibGUuCiAgKi8KIHN0 YXRpYyBpbnQgaW5pdF9jbG9ja192b2x0YWdlX2RlcGVuZGVuY3koCiAJCXN0cnVjdCBwcF9od21n ciAqaHdtZ3IsCkBAIC04NzEsMTUgKzg3MSwxNiBAQCBzdGF0aWMgaW50IGluaXRfY2xvY2tfdm9s dGFnZV9kZXBlbmRlbmN5KAogCXJldHVybiByZXN1bHQ7CiB9CiAKLS8qKiBSZXRyaWV2ZXMgdGhl IChzaWduZWQpIE92ZXJkcml2ZSBsaW1pdHMgZnJvbSBWQklPUy4KKy8qKgorICogaW5pdF9vdmVy X2RyaXZlX2xpbWl0cyAtIFJldHJpZXZlcyB0aGUgKHNpZ25lZCkgT3ZlcmRyaXZlIGxpbWl0cyBm cm9tIFZCSU9TLgogICogVGhlIG1heCBlbmdpbmUgY2xvY2ssIG1lbW9yeSBjbG9jayBhbmQgbWF4 IHRlbXBlcmF0dXJlIGNvbWUgZnJvbSB0aGUgZmlybXdhcmUgaW5mbyB0YWJsZS4KICAqCiAgKiBU aGUgaW5mb3JtYXRpb24gaXMgcGxhY2VkIGludG8gdGhlIHBsYXRmb3JtIGRlc2NyaXB0b3IuCiAg KgotICogQHBhcmFtIGh3bWdyIHNvdXJjZSBvZiB0aGUgVkJJT1MgdGFibGUgYW5kIG93bmVyIG9m IHRoZSBwbGF0Zm9ybSBkZXNjcmlwdG9yIHRvIGJlIHVwZGF0ZWQuCi0gKiBAcGFyYW0gcG93ZXJw bGF5X3RhYmxlIHRoZSBhZGRyZXNzIG9mIHRoZSBQb3dlclBsYXkgdGFibGUuCisgKiBAaHdtZ3I6 IHNvdXJjZSBvZiB0aGUgVkJJT1MgdGFibGUgYW5kIG93bmVyIG9mIHRoZSBwbGF0Zm9ybSBkZXNj cmlwdG9yIHRvIGJlIHVwZGF0ZWQuCisgKiBAcG93ZXJwbGF5X3RhYmxlOiB0aGUgYWRkcmVzcyBv ZiB0aGUgUG93ZXJQbGF5IHRhYmxlLgogICoKLSAqIEByZXR1cm4gMSBhcyBsb25nIGFzIHRoZSBm aXJtd2FyZSBpbmZvIHRhYmxlIHdhcyBwcmVzZW50IGFuZCBvZiBhIHN1cHBvcnRlZCB2ZXJzaW9u LgorICogUmV0dXJuOiAxIGFzIGxvbmcgYXMgdGhlIGZpcm13YXJlIGluZm8gdGFibGUgd2FzIHBy ZXNlbnQgYW5kIG9mIGEgc3VwcG9ydGVkIHZlcnNpb24uCiAgKi8KIHN0YXRpYyBpbnQgaW5pdF9v dmVyX2RyaXZlX2xpbWl0cygKIAkJc3RydWN0IHBwX2h3bWdyICpod21nciwKQEAgLTg5OCwxMSAr ODk5LDExIEBAIHN0YXRpYyBpbnQgaW5pdF9vdmVyX2RyaXZlX2xpbWl0cygKIH0KIAogLyoqCi0g KiBQcml2YXRlIEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uLgorICogaW5pdF90 aGVybWFsX2NvbnRyb2xsZXIgLSBQcml2YXRlIEZ1bmN0aW9uIHVzZWQgZHVyaW5nIGluaXRpYWxp emF0aW9uLgogICogSW5zcGVjdCB0aGUgUG93ZXJQbGF5IHRhYmxlIGZvciBvYnZpb3VzIHNpZ25z IG9mIGNvcnJ1cHRpb24uCi0gKiBAcGFyYW0gaHdtZ3IgUG9pbnRlciB0byB0aGUgaGFyZHdhcmUg bWFuYWdlci4KLSAqIEBwYXJhbSBwb3dlcnBsYXlfdGFibGUgUG9pbnRlciB0byB0aGUgUG93ZXJQ bGF5IFRhYmxlLgotICogQGV4Y2VwdGlvbiBUaGlzIGltcGxlbWVudGF0aW9uIGFsd2F5cyByZXR1 cm5zIDEuCisgKiBAaHdtZ3I6IFBvaW50ZXIgdG8gdGhlIGhhcmR3YXJlIG1hbmFnZXIuCisgKiBA cG93ZXJwbGF5X3RhYmxlOiBQb2ludGVyIHRvIHRoZSBQb3dlclBsYXkgVGFibGUuCisgKiBFeGNl cHRpb246ICBUaGlzIGltcGxlbWVudGF0aW9uIGFsd2F5cyByZXR1cm5zIDEuCiAgKi8KIHN0YXRp YyBpbnQgaW5pdF90aGVybWFsX2NvbnRyb2xsZXIoCiAJCXN0cnVjdCBwcF9od21nciAqaHdtZ3Is CkBAIC0xMTA4LDExICsxMTA5LDExIEBAIHN0YXRpYyBpbnQgaW5pdF90aGVybWFsX2NvbnRyb2xs ZXIoCiB9CiAKIC8qKgotICogUHJpdmF0ZSBGdW5jdGlvbiB1c2VkIGR1cmluZyBpbml0aWFsaXph dGlvbi4KKyAqIGNoZWNrX3Bvd2VycGxheV90YWJsZXMgLSBQcml2YXRlIEZ1bmN0aW9uIHVzZWQg ZHVyaW5nIGluaXRpYWxpemF0aW9uLgogICogSW5zcGVjdCB0aGUgUG93ZXJQbGF5IHRhYmxlIGZv ciBvYnZpb3VzIHNpZ25zIG9mIGNvcnJ1cHRpb24uCi0gKiBAcGFyYW0gaHdtZ3IgUG9pbnRlciB0 byB0aGUgaGFyZHdhcmUgbWFuYWdlci4KLSAqIEBwYXJhbSBwb3dlcnBsYXlfdGFibGUgUG9pbnRl ciB0byB0aGUgUG93ZXJQbGF5IFRhYmxlLgotICogQGV4Y2VwdGlvbiAyIGlmIHRoZSBwb3dlcnBs YXkgdGFibGUgaXMgaW5jb3JyZWN0LgorICogQGh3bWdyOiBQb2ludGVyIHRvIHRoZSBoYXJkd2Fy ZSBtYW5hZ2VyLgorICogQHBvd2VycGxheV90YWJsZTogUG9pbnRlciB0byB0aGUgUG93ZXJQbGF5 IFRhYmxlLgorICogRXhjZXB0aW9uOiAgMiBpZiB0aGUgcG93ZXJwbGF5IHRhYmxlIGlzIGluY29y cmVjdC4KICAqLwogc3RhdGljIGludCBjaGVja19wb3dlcnBsYXlfdGFibGVzKAogCQlzdHJ1Y3Qg cHBfaHdtZ3IgKmh3bWdyLApAQCAtMTI1NSw5ICsxMjU2LDkgQEAgaW50IGdldF9udW1iZXJfb2Zf cG93ZXJwbGF5X3RhYmxlX2VudHJpZXNfdjFfMChzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyKQogCXJl dHVybiAodWludDMyX3QpKHN0YXRlX2FycmF5cy0+dWNOdW1FbnRyaWVzKTsKIH0KIAotLyoqCi0q IFByaXZhdGUgZnVuY3Rpb24gdG8gY29udmVydCBmbGFncyBzdG9yZWQgaW4gdGhlIEJJT1MgdG8g c29mdHdhcmUgZmxhZ3MgaW4gUG93ZXJQbGF5LgotKi8KKy8qCisgKiBQcml2YXRlIGZ1bmN0aW9u IHRvIGNvbnZlcnQgZmxhZ3Mgc3RvcmVkIGluIHRoZSBCSU9TIHRvIHNvZnR3YXJlIGZsYWdzIGlu IFBvd2VyUGxheS4KKyAqLwogc3RhdGljIHVpbnQzMl90IG1ha2VfY2xhc3NpZmljYXRpb25fZmxh Z3Moc3RydWN0IHBwX2h3bWdyICpod21nciwKIAkJdWludDE2X3QgY2xhc3NpZmljYXRpb24sIHVp bnQxNl90IGNsYXNzaWZpY2F0aW9uMikKIHsKQEAgLTEzNTYsMTMgKzEzNTcsMTMgQEAgc3RhdGlj IGludCBwcHRfZ2V0X3ZjZV9zdGF0ZV90YWJsZV9lbnRyeV92MV8wKHN0cnVjdCBwcF9od21nciAq aHdtZ3IsIHVpbnQzMl90IGkKIH0KIAogLyoqCi0qIENyZWF0ZSBhIFBvd2VyIFN0YXRlIG91dCBv ZiBhbiBlbnRyeSBpbiB0aGUgUG93ZXJQbGF5IHRhYmxlLgotKiBUaGlzIGZ1bmN0aW9uIGlzIGNh bGxlZCBieSB0aGUgaGFyZHdhcmUgYmFjay1lbmQuCi0qIEBwYXJhbSBod21nciBQb2ludGVyIHRv IHRoZSBoYXJkd2FyZSBtYW5hZ2VyLgotKiBAcGFyYW0gZW50cnlfaW5kZXggVGhlIGluZGV4IG9m IHRoZSBlbnRyeSB0byBiZSBleHRyYWN0ZWQgZnJvbSB0aGUgdGFibGUuCi0qIEBwYXJhbSBwb3dl cl9zdGF0ZSBUaGUgYWRkcmVzcyBvZiB0aGUgUG93ZXJTdGF0ZSBpbnN0YW5jZSBiZWluZyBjcmVh dGVkLgotKiBAcmV0dXJuIC0xIGlmIHRoZSBlbnRyeSBjYW5ub3QgYmUgcmV0cmlldmVkLgotKi8K KyAqIGdldF9wb3dlcnBsYXlfdGFibGVfZW50cnlfdjFfMCAtIENyZWF0ZSBhIFBvd2VyIFN0YXRl IG91dCBvZiBhbiBlbnRyeSBpbiB0aGUgUG93ZXJQbGF5IHRhYmxlLgorICogVGhpcyBmdW5jdGlv biBpcyBjYWxsZWQgYnkgdGhlIGhhcmR3YXJlIGJhY2stZW5kLgorICogQGh3bWdyOiBQb2ludGVy IHRvIHRoZSBoYXJkd2FyZSBtYW5hZ2VyLgorICogQGVudHJ5X2luZGV4OiBUaGUgaW5kZXggb2Yg dGhlIGVudHJ5IHRvIGJlIGV4dHJhY3RlZCBmcm9tIHRoZSB0YWJsZS4KKyAqIEBwb3dlcl9zdGF0 ZTogVGhlIGFkZHJlc3Mgb2YgdGhlIFBvd2VyU3RhdGUgaW5zdGFuY2UgYmVpbmcgY3JlYXRlZC4K KyAqIFJldHVybjogLTEgaWYgdGhlIGVudHJ5IGNhbm5vdCBiZSByZXRyaWV2ZWQuCisgKi8KIGlu dCBnZXRfcG93ZXJwbGF5X3RhYmxlX2VudHJ5X3YxXzAoc3RydWN0IHBwX2h3bWdyICpod21nciwK IAkJdWludDMyX3QgZW50cnlfaW5kZXgsIHN0cnVjdCBwcF9wb3dlcl9zdGF0ZSAqcG93ZXJfc3Rh dGUsCiAJCWludCAoKmNhbGxfYmFja19mdW5jKShzdHJ1Y3QgcHBfaHdtZ3IgKiwgdm9pZCAqLAot LSAKMi4yNS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwphbWQtZ2Z4IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK