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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id A64DAC52D7F for ; Tue, 13 Aug 2024 23:19:06 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E3DF56B0082; Tue, 13 Aug 2024 19:19:05 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DC6A26B0083; Tue, 13 Aug 2024 19:19:05 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BF2356B0085; Tue, 13 Aug 2024 19:19:05 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 9839F6B0082 for ; Tue, 13 Aug 2024 19:19:05 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 242DBA78C5 for ; Tue, 13 Aug 2024 23:19:05 +0000 (UTC) X-FDA: 82448789850.17.1C1260E Received: from mail-ed1-f52.google.com (mail-ed1-f52.google.com [209.85.208.52]) by imf12.hostedemail.com (Postfix) with ESMTP id 1A9C140008 for ; Tue, 13 Aug 2024 23:19:02 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Nzy+4Lmt; spf=pass (imf12.hostedemail.com: domain of mtodorovac69@gmail.com designates 209.85.208.52 as permitted sender) smtp.mailfrom=mtodorovac69@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723591072; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=f8QR5iSyMEsWI1yUk0cQ9xNVmFl359d4H/dQn+XVUWM=; b=mt1tqmpAHBXbn7FLNaEHSPR+OS2eVoKTtPGxIxu7uamds+uDsKBBCWx7t7GTiDZ4QADTYK rwvNGFsdCtPH4hkyM2CfsA4GR/URf1RcwvVFUfj4vr8e7BoKr5Boc9CEDn/pjBadStvLWf wqv5+2KLbz2LbhYXLZ735YmDBroi3ek= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723591072; a=rsa-sha256; cv=none; b=BrzL/Seox7xI7U81F3w9L138k8u6dSE5qSRNmxmI0iX5RXY2+AyizHvw/34gzaCvOawdTe 5vg3Gwwa2yePVHigJDqnDyX5KjZErSaOtgPo+N0gqc6D3O8fPLs8OoBUL5YU5L4JPDQ+94 5Hn32O+pokTUfmBM3mEIOgMDmwEb/PA= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Nzy+4Lmt; spf=pass (imf12.hostedemail.com: domain of mtodorovac69@gmail.com designates 209.85.208.52 as permitted sender) smtp.mailfrom=mtodorovac69@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-ed1-f52.google.com with SMTP id 4fb4d7f45d1cf-58ef19aa69dso5957490a12.3 for ; Tue, 13 Aug 2024 16:19:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1723591141; x=1724195941; darn=kvack.org; h=in-reply-to:content-language:references:cc:to:from:subject :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=f8QR5iSyMEsWI1yUk0cQ9xNVmFl359d4H/dQn+XVUWM=; b=Nzy+4LmtWqJTo439kwJsVWoUVfPxSM8NQyQG/G5AkXoYcJfZ5TNb64wvUnPHPRhfYy 9Obbv3dlwTP+R1sDF/LlgfxQawyw3BAbXNCsukQyfSdv+i6uACHDQJYNkcWfTNPXog2U zvSSiMqrvSH44dVjBGV6BYgVq/13OcNkH19zcHzmmJh2eAeOP6lHMuaniRUJn63QScd+ G9Wwt3jewVCJTugkJIuVeWgYGDA+03eGRnc3DKbyYtUqFJj2M59IpVhxvLyqc/B6EGV8 GXVRhk6iMVAmUi3rW0FMnhcZgWyc30oCsS8pAhig+w3HgnK34RMp2J8dNS8l/UsfKZuy +W0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723591141; x=1724195941; h=in-reply-to:content-language:references:cc:to:from:subject :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=f8QR5iSyMEsWI1yUk0cQ9xNVmFl359d4H/dQn+XVUWM=; b=FkE2SkHt8pXYNhv/hBgrm8oM8UF+ggFOURPyYbfnWSYOLweepp08Rana5pXtBDvG4u 1n5OSXhxlK+rg9pPAOnlnrpvpscEk0uO0xrfgTSNCfk7s3dtJVnGm2Qrl3kusdgjkdIZ rJtjzzESU5AELVR/luljlZ1mj0ViJrCxqJxzQTFe4Kkx8pAaraOMf86O55stnG4tNduf cQtpZCl6z61oUom1mMi/FfIl/8piLdGOwgQoNyqV2hzfjjRnZ5UdMUDNCuFSG/BrzcDH Nc826qFCU5we8e3BJUCsL9WKVCcOnU6EsoVQzlJnINzOSPfwPkn/cQLH768G1ydTmU5t ZDiQ== X-Gm-Message-State: AOJu0YxOoRy7OZOBXN0D0Uv2anp0AcdHDueK1KbwxN/56wrunT0kRVAx oiMi5QJeQth+nOyDklVejXTu/8c5iUzY6Ga3zQFgrN3l39PUQjw8Al4tAg== X-Google-Smtp-Source: AGHT+IFmxjA8+QwV/ZVXZQUt8a6S/w5qNasntRhca3CmFNWuM9aV83E75NJYW2EarNXydUo7m6G/Sw== X-Received: by 2002:a05:6402:1d52:b0:59e:b95d:e744 with SMTP id 4fb4d7f45d1cf-5bea1cb0604mr559287a12.29.1723591140639; Tue, 13 Aug 2024 16:19:00 -0700 (PDT) Received: from [192.168.178.20] (dh207-40-227.xnet.hr. [88.207.40.227]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-5bd196a7a11sm3331122a12.53.2024.08.13.16.18.59 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 13 Aug 2024 16:19:00 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------UrrSEjECmg2nXc09wJo2Ci1r" Message-ID: Date: Wed, 14 Aug 2024 01:18:42 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: =?UTF-8?B?W1JGQ10gUmU6IFtQUk9CTEVNXSBtbS92bXN0YXQuYzozNDoxMjogZXJy?= =?UTF-8?B?b3I6IOKAmHZtc3RhdF9sYXRlX2luaXRfZG9uZeKAmSBkZWZpbmVkIGJ1dCBub3Qg?= =?UTF-8?Q?used_=5B-Werror=3Dunused-variable=5D?= From: Mirsad Todorovac To: linux-mm@kvack.org Cc: Andrew Morton , linux-kernel@vger.kernel.org, Saurabh Sengar References: Content-Language: en-US In-Reply-To: X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 1A9C140008 X-Stat-Signature: owbxcikqo8qiqh5jgpg158bx6i9afndj X-HE-Tag: 1723591142-957267 X-HE-Meta: U2FsdGVkX1/4l5ZCtNqBPs6e2JgQFVza5IMiEVtIXDh1lRfvGdd3K5jgT67t8yFpD3rH4C097gexHVSAx/2ITw6DEkDVGlITuge/YWVDR6xac6ir20EBZQ4b3N3mqfIPPGOw0hDm+apehbJFNB9fZsuTf/hQj6Xswe/8M/LZZOBbG2ddYkPYyfdjP7U5Iq6hWgat4u3mtfyBsmsRYt7Zc2M4VJnqCvDyxyWiImE3AhdyZ4Fan2/kHlH0WNo09yoAtmzskVUPFdwnyZWchOOVlREvuJ8CWr+xeLVuV24deRj+NVV55OlsFkdhe3xRWbvBvUqjYGIPbfWiOeJPx0fztIM+4XADy9wTrvOXwYjRydQlU8LnmF0d76WMUmEnkJGhG2GchpIWHge+xSwinTzlrtkkgbibqZpx/PgFxEcaCIWVBmQYWm0BDR9Jxpv9iLS+aRKloL0vnCmKKeWP+oVOqxGM1F7xt0jv3yrsG16LhLPLiGqxnll/mYThYKHZoWQHGjRqKfHnGPLJ6oYA9DFFkwLngitixJFRcIFBtNYWVKK6uWImXjVugSQy7rqbUNjcVe97lLHcve1AzhimQqKwq8jEMsBGGWTwennkZW+JlqcpOl+Ts3hvSccEEr7+yJeAUox5PhY184I1JN7xww3BWQUPZyuqGXVrLSXgij9+SS8Bm3obXJmanBDdSG6iNjrF5DXJJ5tDLfY/IpFPEjEUz1jc5ix2y1glnrYVFUdTlb3OBmtU53ViXRWNfoXRqV8im42nOipJrK3VTbVbyGAHKRidqUIFTmOLu4nzOrzpuoTONLViPVqtdc/K9T59Rg+lgkewOKJUoyz10K64UIlCOEhC4H/BBlTGTmzBJeKeNPl65ms5PunDVG3PtGapqYC4y1EOacUJAujaNnQrZ6iMkyG76T7P+5wqpfFgplmfopCM7VH6VMcJA8yP1ZcCc1tN+qG9CUgkuJWHzuzoA/X ee/FkUKv w6Gj0FtiLFUx4xoMTlsluQA6JpR5n8IaS29nJAEbiD7GTHS0rl3eqneoa6yGTaJ+oQJt6gMkkeWhdEujAZcLCQ+qAKMsWzxr4g8MpbNEyRu2AmgzbxoFMEGT908AHbRBybaWPIJj8ZRzZvBcl8oR+ekjR1LC+Mdiq+H7bbedX+TjLOfokF6I64XDb7NojXCYmega4gzFqNro2Ghu5E5ZJK0SRJyRV3txdnRVdvLv7oseTzDBdX+vB67gi/m2mAc6UP98A2SCLDODMMvKR78cuu4aOoSpEWnSOXgom2TpBbm2mZmIKiv6a5XJr6sFfVobhSIpivuwA9F7oNPU/ylbVTnzmcPxHXT8/CTSSNqdX6MSGhM9h0Pogjnz7EQMtPU1XuXZO9BDbunuL7pRM1eD22RdU+sSCuQ45z3KmzCunM+002g252iksEt9nVZ1ZVEjBpCFtxT2C4zarpLXJ8/rS1m67MKK5agxA/WMGIDolWpipmL7b88XyNzgSlHZDf1debLr+HpsVKxKv+BFoOxoN22TVUoeYoeTpCKkS999Ao1IostlsKXcPDHQEJOGbYJZNiiZUsa4RjjLj9wSHmNFiO+f69utwJiDWx96bj9XRg5U0xusmP5+OlPa9lCcJg+uQyVqx4Q7QgF0v8vfEyrd9heGS4jPJOmKoIzdFLIor8aXOTlqeFJcOHbd2jMiNmygLdpIEMUz1PjnNKeaUDWqI1h/URWd/w0HsNmIOgISLalzdBs8YKbZI4hUdmnpaAcZwF/uCiT+FltnmeQ6RZHspGWj6NjKEEGajtffKSZG3GllxpXK/jcWT1OMhHVujsdyYoNUUz0BP87wWWsCpAMMQ8EXaGS4+9OPa4HLTcpCysO020iYPSI82Kq4QuaDp2BHsxcC2Hd2RreAHburTKjTgvD0p2A== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: This is a multi-part message in MIME format. --------------UrrSEjECmg2nXc09wJo2Ci1r Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On 8/14/24 00:03, Mirsad Todorovac wrote: > Hi, all, > > Now, the "randconfig" seed KCONFIG_SEED=0x44AB31A6 revealed another bug: > > mm/vmstat.c:34:12: error: ‘vmstat_late_init_done’ defined but not used [-Werror=unused-variable] > 34 | static int vmstat_late_init_done; > | ^~~~~~~~~~~~~~~~~~~~~ > > Apparently, it is obviously wrong because it is used below: > > Fixes: ef534a0d51984 ("mm/vmstat: defer the refresh_zone_stat_thresholds after all CPUs bringu") > > #ifdef .. #endif forest might be better documented, but this small fix makes it running > again: > > -----------------------------------------------------><---------------------------------- > diff --git a/mm/vmstat.c b/mm/vmstat.c > index e361c2b3a8bc..85b3fc0084a8 100644 > --- a/mm/vmstat.c > +++ b/mm/vmstat.c > @@ -31,7 +31,10 @@ > > #include "internal.h" > > +#ifdef CONFIG_SMP > static int vmstat_late_init_done; > +#endif /* CONFIG_SMP */ > + > #ifdef CONFIG_NUMA > int sysctl_vm_numa_stat = ENABLE_NUMA_STAT; > > -- > > It eliminates -Werror=unused-variable and compile passes at least: > > CC kernel/sys.o > CC mm/vmstat.o > AR init/built-in.a > > Hope thi s helps. > > Best regards, > Mirsad Todorovac Hi, all, After this unobvious error that appeared only under certain configs, I thought of a little housekeeping, according to the instructions here: https://www.kernel.org/doc/html/v4.15/process/coding-style.html#conditional-compilation A little homework might make the #ifdef ... #else ... #endif forest more readable: 1932:#ifdef CONFIG_SMP 1936:# ifdef CONFIG_PROC_FS 1999:# endif /* CONFIG_PROC_FS */ 2137: if (vmstat_late_init_done) 2173: vmstat_late_init_done = 1; 2178:#endif /* CONFIG_SMP */ 2188:#ifdef CONFIG_SMP 2205:#endif /* CONFIG_SMP */ or the entire mm/vmstat.c: 34:#ifdef CONFIG_SMP 35:static int vmstat_late_init_done; 36:#endif /* CONFIG_SMP */ 38:#ifdef CONFIG_NUMA 108:#endif /* CONFIG_NUMA */ 110:#ifdef CONFIG_VM_EVENT_COUNTERS 159:#endif /* CONFIG_VM_EVENT_COUNTERS */ 172:#ifdef CONFIG_NUMA 198:#endif /* CONFIG_NUMA */ 200:#ifdef CONFIG_SMP 548:# ifdef CONFIG_HAVE_CMPXCHG_LOCAL 692:# else 771:# endif /* CONFIG_HAVE_CMPXCHG_LOCAL */ 833:#ifdef CONFIG_NUMA 836:#endif /* CONFIG_NUMA */ 844:#ifdef CONFIG_NUMA 873:#endif /* CONFIG_NUMA */ 923:#ifdef CONFIG_NUMA 933:#endif /* CONFIG_NUMA */ 972:#ifdef CONFIG_NUMA 980:#endif /* CONFIG_NUMA */ 982:#endif /* CONFIG_SMP */ 984:#ifdef CONFIG_NUMA 1024:# ifdef CONFIG_SMP 1027:# endif /* CONFIG_SMP */ 1038:#endif /* CONFIG_NUMA */ 1058:#ifdef CONFIG_COMPACTION 1162:#endif /* CONFIG_COMPACTION */ 1164:#if defined(CONFIG_PROC_FS) || defined(CONFIG_SYSFS) || \ 1166:# ifdef CONFIG_ZONE_DMA 1167:# define TEXT_FOR_DMA(xx) xx "_dma", 1168:# else 1169:# define TEXT_FOR_DMA(xx) 1170:# endif 1172:# ifdef CONFIG_ZONE_DMA32 1173:# define TEXT_FOR_DMA32(xx) xx "_dma32", 1174:# else 1175:# define TEXT_FOR_DMA32(xx) 1176:# endif 1178:# ifdef CONFIG_HIGHMEM 1179:# define TEXT_FOR_HIGHMEM(xx) xx "_high", 1180:# else 1181:# define TEXT_FOR_HIGHMEM(xx) 1182:# endif 1184:# ifdef CONFIG_ZONE_DEVICE 1185:# define TEXT_FOR_DEVICE(xx) xx "_device", 1186:# else 1187:# define TEXT_FOR_DEVICE(xx) 1188:# endif 1190:# define TEXTS_FOR_ZONES(xx) TEXT_FOR_DMA(xx) TEXT_FOR_DMA32(xx) xx "_normal", \ 1205:# if IS_ENABLED(CONFIG_ZSMALLOC) 1207:# endif 1209:# ifdef CONFIG_UNACCEPTED_MEMORY 1211:# endif 1214:# ifdef CONFIG_NUMA 1221:# endif 1262:# if IS_ENABLED(CONFIG_SHADOW_CALL_STACK) 1264:# endif 1267:# ifdef CONFIG_IOMMU_SUPPORT 1269:# endif 1270:# ifdef CONFIG_SWAP 1272:# endif 1273:# ifdef CONFIG_NUMA_BALANCING 1276:# endif 1286:# if defined(CONFIG_VM_EVENT_COUNTERS) || defined(CONFIG_MEMCG) 1320:# ifdef CONFIG_NUMA 1323:# endif 1337:# ifdef CONFIG_NUMA_BALANCING 1343:# endif 1344:# ifdef CONFIG_MIGRATION 1350:# endif 1351:# ifdef CONFIG_COMPACTION 1361:# endif 1363:# ifdef CONFIG_HUGETLB_PAGE 1366:# endif 1367:# ifdef CONFIG_CMA 1370:# endif 1379:# ifdef CONFIG_TRANSPARENT_HUGEPAGE 1396:# ifdef CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD 1398:# endif 1403:# endif /*CONFIG_TRANSPARENT_HUGEPAGE */ 1404:# ifdef CONFIG_MEMORY_BALLOON 1407:# ifdef CONFIG_BALLOON_COMPACTION 1409:# endif 1410:# endif /* CONFIG_MEMORY_BALLOON */ 1411:# ifdef CONFIG_DEBUG_TLBFLUSH 1416:# endif /* CONFIG_DEBUG_TLBFLUSH */ 1418:# ifdef CONFIG_SWAP 1421:# ifdef CONFIG_KSM 1423:# endif /* CONFIG_KSM */ 1424:# endif /* CONFIG_SWAP */ 1425:# ifdef CONFIG_KSM 1427:# endif 1428:# ifdef CONFIG_ZSWAP 1432:# endif 1433:# ifdef CONFIG_X86 1436:# endif 1437:# ifdef CONFIG_PER_VMA_LOCK_STATS 1442:# endif 1443:# ifdef CONFIG_DEBUG_STACK_USAGE 1445:# if THREAD_SIZE > 1024 1447:# endif 1448:# if THREAD_SIZE > 2048 1450:# endif 1451:# if THREAD_SIZE > 4096 1453:# endif 1454:# if THREAD_SIZE > 8192 1456:# endif 1457:# if THREAD_SIZE > 16384 1459:# endif 1460:# if THREAD_SIZE > 32768 1462:# endif 1463:# if THREAD_SIZE > 65536 1465:# endif 1466:# endif /* CONFIG_DEBUG_STACK_USAGE */ 1467:# endif /* CONFIG_VM_EVENT_COUNTERS || CONFIG_MEMCG */ 1469:#endif /* CONFIG_PROC_FS || CONFIG_SYSFS || CONFIG_NUMA || CONFIG_MEMCG */ 1471:#if (defined(CONFIG_DEBUG_FS) && defined(CONFIG_COMPACTION)) || \ 1521:#endif /* CONFIG_DEBUG_FS && CONFIG_COMPACTION || CONFIG_PROC_FS */ 1523:#ifdef CONFIG_PROC_FS 1660:# ifdef CONFIG_PAGE_OWNER 1675:# endif /* CONFIG_PAGE_OWNER */ 1783:# ifdef CONFIG_NUMA 1787:# endif 1804:# ifdef CONFIG_SMP 1808:# endif 1839:#define NR_VMSTAT_ITEMS (NR_VM_ZONE_STAT_ITEMS + \ 1864:# ifdef CONFIG_NUMA 1868:# endif 1883:# ifdef CONFIG_VM_EVENT_COUNTERS 1887:# endif 1930:#endif /* CONFIG_PROC_FS */ 1932:#ifdef CONFIG_SMP 1936:# ifdef CONFIG_PROC_FS 1999:# endif /* CONFIG_PROC_FS */ 2137: if (vmstat_late_init_done) 2173: vmstat_late_init_done = 1; 2178:#endif /* CONFIG_SMP */ 2188:#ifdef CONFIG_SMP 2205:#endif /* CONFIG_SMP */ 2206:#ifdef CONFIG_PROC_FS 2211:#endif /* CONFIG_PROC_FS */ 2214:#if defined(CONFIG_DEBUG_FS) && defined(CONFIG_COMPACTION) 2347:#endif /* CONFIG_DEBUG_FS && CONFIG_COMPACTION */ Indentation is optional, but preprocessors traditionally allowed it since the early 1990s I think :-/ Please find attached patch with and without #ifdef indentation. (Both compile w GCC 13.2.0.) Thank you. Best regards, Mirsad Todorovac --------------UrrSEjECmg2nXc09wJo2Ci1r Content-Type: text/x-patch; charset=UTF-8; name="mm_vmstat_endif.diff" Content-Disposition: attachment; filename="mm_vmstat_endif.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL21tL3Ztc3RhdC5jIGIvbW0vdm1zdGF0LmMKaW5kZXggZTM2MWMyYjNh OGJjLi4zNGRlODUzMGFhNGUgMTAwNjQ0Ci0tLSBhL21tL3Ztc3RhdC5jCisrKyBiL21tL3Zt c3RhdC5jCkBAIC0zMSw3ICszMSwxMCBAQAogCiAjaW5jbHVkZSAiaW50ZXJuYWwuaCIKIAor I2lmZGVmIENPTkZJR19TTVAKIHN0YXRpYyBpbnQgdm1zdGF0X2xhdGVfaW5pdF9kb25lOwor I2VuZGlmIC8qIENPTkZJR19TTVAgKi8KKwogI2lmZGVmIENPTkZJR19OVU1BCiBpbnQgc3lz Y3RsX3ZtX251bWFfc3RhdCA9IEVOQUJMRV9OVU1BX1NUQVQ7CiAKQEAgLTEwMiw3ICsxMDUs NyBAQCBpbnQgc3lzY3RsX3ZtX251bWFfc3RhdF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJbXV0ZXhfdW5sb2NrKCZ2bV9udW1hX3N0YXRf bG9jayk7CiAJcmV0dXJuIHJldDsKIH0KLSNlbmRpZgorI2VuZGlmIC8qIENPTkZJR19OVU1B ICovCiAKICNpZmRlZiBDT05GSUdfVk1fRVZFTlRfQ09VTlRFUlMKIERFRklORV9QRVJfQ1BV KHN0cnVjdCB2bV9ldmVudF9zdGF0ZSwgdm1fZXZlbnRfc3RhdGVzKSA9IHt7MH19OwpAQCAt MTkyLDcgKzE5NSw3IEBAIHZvaWQgZm9sZF92bV9udW1hX2V2ZW50cyh2b2lkKQogCWZvcl9l YWNoX3BvcHVsYXRlZF96b25lKHpvbmUpCiAJCWZvbGRfdm1fem9uZV9udW1hX2V2ZW50cyh6 b25lKTsKIH0KLSNlbmRpZgorI2VuZGlmIC8qIENPTkZJR19OVU1BICovCiAKICNpZmRlZiBD T05GSUdfU01QCiAKQEAgLTc2NSw3ICs3NjgsNyBAQCB2b2lkIGRlY19ub2RlX3BhZ2Vfc3Rh dGUoc3RydWN0IHBhZ2UgKnBhZ2UsIGVudW0gbm9kZV9zdGF0X2l0ZW0gaXRlbSkKIAlsb2Nh bF9pcnFfcmVzdG9yZShmbGFncyk7CiB9CiBFWFBPUlRfU1lNQk9MKGRlY19ub2RlX3BhZ2Vf c3RhdGUpOwotI2VuZGlmCisjZW5kaWYgLyogQ09ORklHX0hBVkVfQ01QWENIR19MT0NBTCAq LwogCiAvKgogICogRm9sZCBhIGRpZmZlcmVudGlhbCBpbnRvIHRoZSBnbG9iYWwgY291bnRl cnMuCkBAIC04MzAsNyArODMzLDcgQEAgc3RhdGljIGludCByZWZyZXNoX2NwdV92bV9zdGF0 cyhib29sIGRvX3BhZ2VzZXRzKQogI2lmZGVmIENPTkZJR19OVU1BCiAJCQkJLyogMyBzZWNv bmRzIGlkbGUgdGlsbCBmbHVzaCAqLwogCQkJCV9fdGhpc19jcHVfd3JpdGUocGNwLT5leHBp cmUsIDMpOwotI2VuZGlmCisjZW5kaWYgLyogQ09ORklHX05VTUEgKi8KIAkJCX0KIAkJfQog CkBAIC04NjcsNyArODcwLDcgQEAgc3RhdGljIGludCByZWZyZXNoX2NwdV92bV9zdGF0cyhi b29sIGRvX3BhZ2VzZXRzKQogCQkJCWRyYWluX3pvbmVfcGFnZXMoem9uZSwgdGhpc19jcHVf cHRyKHBjcCkpOwogCQkJCWNoYW5nZXMrKzsKIAkJCX0KLSNlbmRpZgorI2VuZGlmIC8qIENP TkZJR19OVU1BICovCiAJCX0KIAl9CiAKQEAgLTkyNyw3ICs5MzAsNyBAQCB2b2lkIGNwdV92 bV9zdGF0c19mb2xkKGludCBjcHUpCiAJCQkJem9uZV9udW1hX2V2ZW50X2FkZCh2LCB6b25l LCBpKTsKIAkJCX0KIAkJfQotI2VuZGlmCisjZW5kaWYgLyogQ09ORklHX05VTUEgKi8KIAl9 CiAKIAlmb3JfZWFjaF9vbmxpbmVfcGdkYXQocGdkYXQpIHsKQEAgLTk3NCw5ICs5NzcsOSBA QCB2b2lkIGRyYWluX3pvbmVzdGF0KHN0cnVjdCB6b25lICp6b25lLCBzdHJ1Y3QgcGVyX2Nw dV96b25lc3RhdCAqcHpzdGF0cykKIAkJCXpvbmVfbnVtYV9ldmVudF9hZGQodiwgem9uZSwg aSk7CiAJCX0KIAl9Ci0jZW5kaWYKKyNlbmRpZiAvKiBDT05GSUdfTlVNQSAqLwogfQotI2Vu ZGlmCisjZW5kaWYgLyogQ09ORklHX1NNUCAqLwogCiAjaWZkZWYgQ09ORklHX05VTUEKIC8q CkBAIC0xMDIxLDcgKzEwMjQsNyBAQCB1bnNpZ25lZCBsb25nIG5vZGVfcGFnZV9zdGF0ZV9w YWdlcyhzdHJ1Y3QgcGdsaXN0X2RhdGEgKnBnZGF0LAogI2lmZGVmIENPTkZJR19TTVAKIAlp ZiAoeCA8IDApCiAJCXggPSAwOwotI2VuZGlmCisjZW5kaWYgLyogQ09ORklHX1NNUCAqLwog CXJldHVybiB4OwogfQogCkBAIC0xMDMyLDcgKzEwMzUsNyBAQCB1bnNpZ25lZCBsb25nIG5v ZGVfcGFnZV9zdGF0ZShzdHJ1Y3QgcGdsaXN0X2RhdGEgKnBnZGF0LAogCiAJcmV0dXJuIG5v ZGVfcGFnZV9zdGF0ZV9wYWdlcyhwZ2RhdCwgaXRlbSk7CiB9Ci0jZW5kaWYKKyNlbmRpZiAv KiBDT05GSUdfTlVNQSAqLwogCiAvKgogICogQ291bnQgbnVtYmVyIG9mIHBhZ2VzICJzdHJ1 Y3QgcGFnZSIgYW5kICJzdHJ1Y3QgcGFnZV9leHQiIGNvbnN1bWUuCkBAIC0xMTU2LDcgKzEx NTksNyBAQCBpbnQgZnJhZ21lbnRhdGlvbl9pbmRleChzdHJ1Y3Qgem9uZSAqem9uZSwgdW5z aWduZWQgaW50IG9yZGVyKQogCWZpbGxfY29udGlnX3BhZ2VfaW5mbyh6b25lLCBvcmRlciwg JmluZm8pOwogCXJldHVybiBfX2ZyYWdtZW50YXRpb25faW5kZXgob3JkZXIsICZpbmZvKTsK IH0KLSNlbmRpZgorI2VuZGlmIC8qIENPTkZJR19DT01QQUNUSU9OICovCiAKICNpZiBkZWZp bmVkKENPTkZJR19QUk9DX0ZTKSB8fCBkZWZpbmVkKENPTkZJR19TWVNGUykgfHwgXAogICAg IGRlZmluZWQoQ09ORklHX05VTUEpIHx8IGRlZmluZWQoQ09ORklHX01FTUNHKQpAQCAtMTM5 Nyw3ICsxNDAwLDcgQEAgY29uc3QgY2hhciAqIGNvbnN0IHZtc3RhdF90ZXh0W10gPSB7CiAJ InRocF96ZXJvX3BhZ2VfYWxsb2NfZmFpbGVkIiwKIAkidGhwX3N3cG91dCIsCiAJInRocF9z d3BvdXRfZmFsbGJhY2siLAotI2VuZGlmCisjZW5kaWYgLypDT05GSUdfVFJBTlNQQVJFTlRf SFVHRVBBR0UgKi8KICNpZmRlZiBDT05GSUdfTUVNT1JZX0JBTExPT04KIAkiYmFsbG9vbl9p bmZsYXRlIiwKIAkiYmFsbG9vbl9kZWZsYXRlIiwKQEAgLTE0MTcsOCArMTQyMCw4IEBAIGNv bnN0IGNoYXIgKiBjb25zdCB2bXN0YXRfdGV4dFtdID0gewogCSJzd2FwX3JhX2hpdCIsCiAj aWZkZWYgQ09ORklHX0tTTQogCSJrc21fc3dwaW5fY29weSIsCi0jZW5kaWYKLSNlbmRpZgor I2VuZGlmIC8qIENPTkZJR19LU00gKi8KKyNlbmRpZiAvKiBDT05GSUdfU1dBUCAqLwogI2lm ZGVmIENPTkZJR19LU00KIAkiY293X2tzbSIsCiAjZW5kaWYKQEAgLTE0NjAsNyArMTQ2Myw3 IEBAIGNvbnN0IGNoYXIgKiBjb25zdCB2bXN0YXRfdGV4dFtdID0gewogI2lmIFRIUkVBRF9T SVpFID4gNjU1MzYKIAkia3N0YWNrX3Jlc3QiLAogI2VuZGlmCi0jZW5kaWYKKyNlbmRpZiAv KiBDT05GSUdfREVCVUdfU1RBQ0tfVVNBR0UgKi8KICNlbmRpZiAvKiBDT05GSUdfVk1fRVZF TlRfQ09VTlRFUlMgfHwgQ09ORklHX01FTUNHICovCiB9OwogI2VuZGlmIC8qIENPTkZJR19Q Uk9DX0ZTIHx8IENPTkZJR19TWVNGUyB8fCBDT05GSUdfTlVNQSB8fCBDT05GSUdfTUVNQ0cg Ki8KQEAgLTE1MTUsNyArMTUxOCw3IEBAIHN0YXRpYyB2b2lkIHdhbGtfem9uZXNfaW5fbm9k ZShzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHBnX2RhdGFfdCAqcGdkYXQsCiAJCQlzcGluX3VubG9j a19pcnFyZXN0b3JlKCZ6b25lLT5sb2NrLCBmbGFncyk7CiAJfQogfQotI2VuZGlmCisjZW5k aWYgLyogQ09ORklHX0RFQlVHX0ZTICYmIENPTkZJR19DT01QQUNUSU9OIHx8IENPTkZJR19Q Uk9DX0ZTICovCiAKICNpZmRlZiBDT05GSUdfUFJPQ19GUwogc3RhdGljIHZvaWQgZnJhZ19z aG93X3ByaW50KHN0cnVjdCBzZXFfZmlsZSAqbSwgcGdfZGF0YV90ICpwZ2RhdCwKQEAgLTIx NzIsNyArMjE3NSw3IEBAIHN0YXRpYyBpbnQgX19pbml0IHZtc3RhdF9sYXRlX2luaXQodm9p ZCkKIAlyZXR1cm4gMDsKIH0KIGxhdGVfaW5pdGNhbGwodm1zdGF0X2xhdGVfaW5pdCk7Ci0j ZW5kaWYKKyNlbmRpZiAvKiBDT05GSUdfU01QICovCiAKIHN0cnVjdCB3b3JrcXVldWVfc3Ry dWN0ICptbV9wZXJjcHVfd3E7CiAKQEAgLTIxOTksMTMgKzIyMDIsMTMgQEAgdm9pZCBfX2lu aXQgaW5pdF9tbV9pbnRlcm5hbHModm9pZCkKIAljcHVzX3JlYWRfdW5sb2NrKCk7CiAKIAlz dGFydF9zaGVwaGVyZF90aW1lcigpOwotI2VuZGlmCisjZW5kaWYgLyogQ09ORklHX1NNUCAq LwogI2lmZGVmIENPTkZJR19QUk9DX0ZTCiAJcHJvY19jcmVhdGVfc2VxKCJidWRkeWluZm8i LCAwNDQ0LCBOVUxMLCAmZnJhZ21lbnRhdGlvbl9vcCk7CiAJcHJvY19jcmVhdGVfc2VxKCJw YWdldHlwZWluZm8iLCAwNDAwLCBOVUxMLCAmcGFnZXR5cGVpbmZvX29wKTsKIAlwcm9jX2Ny ZWF0ZV9zZXEoInZtc3RhdCIsIDA0NDQsIE5VTEwsICZ2bXN0YXRfb3ApOwogCXByb2NfY3Jl YXRlX3NlcSgiem9uZWluZm8iLCAwNDQ0LCBOVUxMLCAmem9uZWluZm9fb3ApOwotI2VuZGlm CisjZW5kaWYgLyogQ09ORklHX1BST0NfRlMgKi8KIH0KIAogI2lmIGRlZmluZWQoQ09ORklH X0RFQlVHX0ZTKSAmJiBkZWZpbmVkKENPTkZJR19DT01QQUNUSU9OKQpAQCAtMjM0MSw0ICsy MzQ0LDQgQEAgc3RhdGljIGludCBfX2luaXQgZXh0ZnJhZ19kZWJ1Z19pbml0KHZvaWQpCiAK IG1vZHVsZV9pbml0KGV4dGZyYWdfZGVidWdfaW5pdCk7CiAKLSNlbmRpZgorI2VuZGlmIC8q IENPTkZJR19ERUJVR19GUyAmJiBDT05GSUdfQ09NUEFDVElPTiAqLwo= --------------UrrSEjECmg2nXc09wJo2Ci1r Content-Type: text/x-patch; charset=UTF-8; name="mm_vmstat_endif_02.diff" Content-Disposition: attachment; filename="mm_vmstat_endif_02.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL21tL3Ztc3RhdC5jIGIvbW0vdm1zdGF0LmMKaW5kZXggZTM2MWMyYjNh OGJjLi4yNTc5ZDRhNTkzNjQgMTAwNjQ0Ci0tLSBhL21tL3Ztc3RhdC5jCisrKyBiL21tL3Zt c3RhdC5jCkBAIC0zMSw3ICszMSwxMCBAQAogCiAjaW5jbHVkZSAiaW50ZXJuYWwuaCIKIAor I2lmZGVmIENPTkZJR19TTVAKIHN0YXRpYyBpbnQgdm1zdGF0X2xhdGVfaW5pdF9kb25lOwor I2VuZGlmIC8qIENPTkZJR19TTVAgKi8KKwogI2lmZGVmIENPTkZJR19OVU1BCiBpbnQgc3lz Y3RsX3ZtX251bWFfc3RhdCA9IEVOQUJMRV9OVU1BX1NUQVQ7CiAKQEAgLTEwMiw3ICsxMDUs NyBAQCBpbnQgc3lzY3RsX3ZtX251bWFfc3RhdF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJbXV0ZXhfdW5sb2NrKCZ2bV9udW1hX3N0YXRf bG9jayk7CiAJcmV0dXJuIHJldDsKIH0KLSNlbmRpZgorI2VuZGlmIC8qIENPTkZJR19OVU1B ICovCiAKICNpZmRlZiBDT05GSUdfVk1fRVZFTlRfQ09VTlRFUlMKIERFRklORV9QRVJfQ1BV KHN0cnVjdCB2bV9ldmVudF9zdGF0ZSwgdm1fZXZlbnRfc3RhdGVzKSA9IHt7MH19OwpAQCAt MTkyLDcgKzE5NSw3IEBAIHZvaWQgZm9sZF92bV9udW1hX2V2ZW50cyh2b2lkKQogCWZvcl9l YWNoX3BvcHVsYXRlZF96b25lKHpvbmUpCiAJCWZvbGRfdm1fem9uZV9udW1hX2V2ZW50cyh6 b25lKTsKIH0KLSNlbmRpZgorI2VuZGlmIC8qIENPTkZJR19OVU1BICovCiAKICNpZmRlZiBD T05GSUdfU01QCiAKQEAgLTU0Miw3ICs1NDUsNyBAQCB2b2lkIF9fZGVjX25vZGVfcGFnZV9z dGF0ZShzdHJ1Y3QgcGFnZSAqcGFnZSwgZW51bSBub2RlX3N0YXRfaXRlbSBpdGVtKQogfQog RVhQT1JUX1NZTUJPTChfX2RlY19ub2RlX3BhZ2Vfc3RhdGUpOwogCi0jaWZkZWYgQ09ORklH X0hBVkVfQ01QWENIR19MT0NBTAorIyBpZmRlZiBDT05GSUdfSEFWRV9DTVBYQ0hHX0xPQ0FM CiAvKgogICogSWYgd2UgaGF2ZSBjbXB4Y2hnX2xvY2FsIHN1cHBvcnQgdGhlbiB3ZSBkbyBu b3QgbmVlZCB0byBpbmN1ciB0aGUgb3ZlcmhlYWQKICAqIHRoYXQgY29tZXMgd2l0aCBsb2Nh bF9pcnFfc2F2ZS9yZXN0b3JlIGlmIHdlIHVzZSB0aGlzX2NwdV9jbXB4Y2hnLgpAQCAtNjg2 LDcgKzY4OSw3IEBAIHZvaWQgZGVjX25vZGVfcGFnZV9zdGF0ZShzdHJ1Y3QgcGFnZSAqcGFn ZSwgZW51bSBub2RlX3N0YXRfaXRlbSBpdGVtKQogCW1vZF9ub2RlX3N0YXRlKHBhZ2VfcGdk YXQocGFnZSksIGl0ZW0sIC0xLCAtMSk7CiB9CiBFWFBPUlRfU1lNQk9MKGRlY19ub2RlX3Bh Z2Vfc3RhdGUpOwotI2Vsc2UKKyMgZWxzZQogLyoKICAqIFVzZSBpbnRlcnJ1cHQgZGlzYWJs ZSB0byBzZXJpYWxpemUgY291bnRlciB1cGRhdGVzCiAgKi8KQEAgLTc2NSw3ICs3NjgsNyBA QCB2b2lkIGRlY19ub2RlX3BhZ2Vfc3RhdGUoc3RydWN0IHBhZ2UgKnBhZ2UsIGVudW0gbm9k ZV9zdGF0X2l0ZW0gaXRlbSkKIAlsb2NhbF9pcnFfcmVzdG9yZShmbGFncyk7CiB9CiBFWFBP UlRfU1lNQk9MKGRlY19ub2RlX3BhZ2Vfc3RhdGUpOwotI2VuZGlmCisjIGVuZGlmIC8qIENP TkZJR19IQVZFX0NNUFhDSEdfTE9DQUwgKi8KIAogLyoKICAqIEZvbGQgYSBkaWZmZXJlbnRp YWwgaW50byB0aGUgZ2xvYmFsIGNvdW50ZXJzLgpAQCAtODMwLDcgKzgzMyw3IEBAIHN0YXRp YyBpbnQgcmVmcmVzaF9jcHVfdm1fc3RhdHMoYm9vbCBkb19wYWdlc2V0cykKICNpZmRlZiBD T05GSUdfTlVNQQogCQkJCS8qIDMgc2Vjb25kcyBpZGxlIHRpbGwgZmx1c2ggKi8KIAkJCQlf X3RoaXNfY3B1X3dyaXRlKHBjcC0+ZXhwaXJlLCAzKTsKLSNlbmRpZgorI2VuZGlmIC8qIENP TkZJR19OVU1BICovCiAJCQl9CiAJCX0KIApAQCAtODY3LDcgKzg3MCw3IEBAIHN0YXRpYyBp bnQgcmVmcmVzaF9jcHVfdm1fc3RhdHMoYm9vbCBkb19wYWdlc2V0cykKIAkJCQlkcmFpbl96 b25lX3BhZ2VzKHpvbmUsIHRoaXNfY3B1X3B0cihwY3ApKTsKIAkJCQljaGFuZ2VzKys7CiAJ CQl9Ci0jZW5kaWYKKyNlbmRpZiAvKiBDT05GSUdfTlVNQSAqLwogCQl9CiAJfQogCkBAIC05 MjcsNyArOTMwLDcgQEAgdm9pZCBjcHVfdm1fc3RhdHNfZm9sZChpbnQgY3B1KQogCQkJCXpv bmVfbnVtYV9ldmVudF9hZGQodiwgem9uZSwgaSk7CiAJCQl9CiAJCX0KLSNlbmRpZgorI2Vu ZGlmIC8qIENPTkZJR19OVU1BICovCiAJfQogCiAJZm9yX2VhY2hfb25saW5lX3BnZGF0KHBn ZGF0KSB7CkBAIC05NzQsOSArOTc3LDkgQEAgdm9pZCBkcmFpbl96b25lc3RhdChzdHJ1Y3Qg em9uZSAqem9uZSwgc3RydWN0IHBlcl9jcHVfem9uZXN0YXQgKnB6c3RhdHMpCiAJCQl6b25l X251bWFfZXZlbnRfYWRkKHYsIHpvbmUsIGkpOwogCQl9CiAJfQotI2VuZGlmCisjZW5kaWYg LyogQ09ORklHX05VTUEgKi8KIH0KLSNlbmRpZgorI2VuZGlmIC8qIENPTkZJR19TTVAgKi8K IAogI2lmZGVmIENPTkZJR19OVU1BCiAvKgpAQCAtMTAxOCwxMCArMTAyMSwxMCBAQCB1bnNp Z25lZCBsb25nIG5vZGVfcGFnZV9zdGF0ZV9wYWdlcyhzdHJ1Y3QgcGdsaXN0X2RhdGEgKnBn ZGF0LAogCQkJCSAgICBlbnVtIG5vZGVfc3RhdF9pdGVtIGl0ZW0pCiB7CiAJbG9uZyB4ID0g YXRvbWljX2xvbmdfcmVhZCgmcGdkYXQtPnZtX3N0YXRbaXRlbV0pOwotI2lmZGVmIENPTkZJ R19TTVAKKyMgaWZkZWYgQ09ORklHX1NNUAogCWlmICh4IDwgMCkKIAkJeCA9IDA7Ci0jZW5k aWYKKyMgZW5kaWYgLyogQ09ORklHX1NNUCAqLwogCXJldHVybiB4OwogfQogCkBAIC0xMDMy LDcgKzEwMzUsNyBAQCB1bnNpZ25lZCBsb25nIG5vZGVfcGFnZV9zdGF0ZShzdHJ1Y3QgcGds aXN0X2RhdGEgKnBnZGF0LAogCiAJcmV0dXJuIG5vZGVfcGFnZV9zdGF0ZV9wYWdlcyhwZ2Rh dCwgaXRlbSk7CiB9Ci0jZW5kaWYKKyNlbmRpZiAvKiBDT05GSUdfTlVNQSAqLwogCiAvKgog ICogQ291bnQgbnVtYmVyIG9mIHBhZ2VzICJzdHJ1Y3QgcGFnZSIgYW5kICJzdHJ1Y3QgcGFn ZV9leHQiIGNvbnN1bWUuCkBAIC0xMTU2LDM1ICsxMTU5LDM1IEBAIGludCBmcmFnbWVudGF0 aW9uX2luZGV4KHN0cnVjdCB6b25lICp6b25lLCB1bnNpZ25lZCBpbnQgb3JkZXIpCiAJZmls bF9jb250aWdfcGFnZV9pbmZvKHpvbmUsIG9yZGVyLCAmaW5mbyk7CiAJcmV0dXJuIF9fZnJh Z21lbnRhdGlvbl9pbmRleChvcmRlciwgJmluZm8pOwogfQotI2VuZGlmCisjZW5kaWYgLyog Q09ORklHX0NPTVBBQ1RJT04gKi8KIAogI2lmIGRlZmluZWQoQ09ORklHX1BST0NfRlMpIHx8 IGRlZmluZWQoQ09ORklHX1NZU0ZTKSB8fCBcCiAgICAgZGVmaW5lZChDT05GSUdfTlVNQSkg fHwgZGVmaW5lZChDT05GSUdfTUVNQ0cpCi0jaWZkZWYgQ09ORklHX1pPTkVfRE1BCi0jZGVm aW5lIFRFWFRfRk9SX0RNQSh4eCkgeHggIl9kbWEiLAotI2Vsc2UKLSNkZWZpbmUgVEVYVF9G T1JfRE1BKHh4KQotI2VuZGlmCi0KLSNpZmRlZiBDT05GSUdfWk9ORV9ETUEzMgotI2RlZmlu ZSBURVhUX0ZPUl9ETUEzMih4eCkgeHggIl9kbWEzMiIsCi0jZWxzZQotI2RlZmluZSBURVhU X0ZPUl9ETUEzMih4eCkKLSNlbmRpZgotCi0jaWZkZWYgQ09ORklHX0hJR0hNRU0KLSNkZWZp bmUgVEVYVF9GT1JfSElHSE1FTSh4eCkgeHggIl9oaWdoIiwKLSNlbHNlCi0jZGVmaW5lIFRF WFRfRk9SX0hJR0hNRU0oeHgpCi0jZW5kaWYKLQotI2lmZGVmIENPTkZJR19aT05FX0RFVklD RQotI2RlZmluZSBURVhUX0ZPUl9ERVZJQ0UoeHgpIHh4ICJfZGV2aWNlIiwKLSNlbHNlCi0j ZGVmaW5lIFRFWFRfRk9SX0RFVklDRSh4eCkKLSNlbmRpZgotCi0jZGVmaW5lIFRFWFRTX0ZP Ul9aT05FUyh4eCkgVEVYVF9GT1JfRE1BKHh4KSBURVhUX0ZPUl9ETUEzMih4eCkgeHggIl9u b3JtYWwiLCBcCisjIGlmZGVmIENPTkZJR19aT05FX0RNQQorIyBkZWZpbmUgVEVYVF9GT1Jf RE1BKHh4KSB4eCAiX2RtYSIsCisjIGVsc2UKKyMgZGVmaW5lIFRFWFRfRk9SX0RNQSh4eCkK KyMgZW5kaWYKKworIyBpZmRlZiBDT05GSUdfWk9ORV9ETUEzMgorIyBkZWZpbmUgVEVYVF9G T1JfRE1BMzIoeHgpIHh4ICJfZG1hMzIiLAorIyBlbHNlCisjIGRlZmluZSBURVhUX0ZPUl9E TUEzMih4eCkKKyMgZW5kaWYKKworIyBpZmRlZiBDT05GSUdfSElHSE1FTQorIyBkZWZpbmUg VEVYVF9GT1JfSElHSE1FTSh4eCkgeHggIl9oaWdoIiwKKyMgZWxzZQorIyBkZWZpbmUgVEVY VF9GT1JfSElHSE1FTSh4eCkKKyMgZW5kaWYKKworIyBpZmRlZiBDT05GSUdfWk9ORV9ERVZJ Q0UKKyMgZGVmaW5lIFRFWFRfRk9SX0RFVklDRSh4eCkgeHggIl9kZXZpY2UiLAorIyBlbHNl CisjIGRlZmluZSBURVhUX0ZPUl9ERVZJQ0UoeHgpCisjIGVuZGlmCisKKyMgZGVmaW5lIFRF WFRTX0ZPUl9aT05FUyh4eCkgVEVYVF9GT1JfRE1BKHh4KSBURVhUX0ZPUl9ETUEzMih4eCkg eHggIl9ub3JtYWwiLCBcCiAJCQkJCVRFWFRfRk9SX0hJR0hNRU0oeHgpIHh4ICJfbW92YWJs ZSIsIFwKIAkJCQkJVEVYVF9GT1JfREVWSUNFKHh4KQogCkBAIC0xMTk5LDIzICsxMjAyLDIz IEBAIGNvbnN0IGNoYXIgKiBjb25zdCB2bXN0YXRfdGV4dFtdID0gewogCSJucl96b25lX3dy aXRlX3BlbmRpbmciLAogCSJucl9tbG9jayIsCiAJIm5yX2JvdW5jZSIsCi0jaWYgSVNfRU5B QkxFRChDT05GSUdfWlNNQUxMT0MpCisjIGlmIElTX0VOQUJMRUQoQ09ORklHX1pTTUFMTE9D KQogCSJucl96c3BhZ2VzIiwKLSNlbmRpZgorIyBlbmRpZgogCSJucl9mcmVlX2NtYSIsCi0j aWZkZWYgQ09ORklHX1VOQUNDRVBURURfTUVNT1JZCisjIGlmZGVmIENPTkZJR19VTkFDQ0VQ VEVEX01FTU9SWQogCSJucl91bmFjY2VwdGVkIiwKLSNlbmRpZgorIyBlbmRpZgogCiAJLyog ZW51bSBudW1hX3N0YXRfaXRlbSBjb3VudGVycyAqLwotI2lmZGVmIENPTkZJR19OVU1BCisj IGlmZGVmIENPTkZJR19OVU1BCiAJIm51bWFfaGl0IiwKIAkibnVtYV9taXNzIiwKIAkibnVt YV9mb3JlaWduIiwKIAkibnVtYV9pbnRlcmxlYXZlIiwKIAkibnVtYV9sb2NhbCIsCiAJIm51 bWFfb3RoZXIiLAotI2VuZGlmCisjIGVuZGlmCiAKIAkvKiBlbnVtIG5vZGVfc3RhdF9pdGVt IGNvdW50ZXJzICovCiAJIm5yX2luYWN0aXZlX2Fub24iLApAQCAtMTI1NiwyMSArMTI1OSwy MSBAQCBjb25zdCBjaGFyICogY29uc3Qgdm1zdGF0X3RleHRbXSA9IHsKIAkibnJfZm9sbF9w aW5fYWNxdWlyZWQiLAogCSJucl9mb2xsX3Bpbl9yZWxlYXNlZCIsCiAJIm5yX2tlcm5lbF9z dGFjayIsCi0jaWYgSVNfRU5BQkxFRChDT05GSUdfU0hBRE9XX0NBTExfU1RBQ0spCisjIGlm IElTX0VOQUJMRUQoQ09ORklHX1NIQURPV19DQUxMX1NUQUNLKQogCSJucl9zaGFkb3dfY2Fs bF9zdGFjayIsCi0jZW5kaWYKKyMgZW5kaWYKIAkibnJfcGFnZV90YWJsZV9wYWdlcyIsCiAJ Im5yX3NlY19wYWdlX3RhYmxlX3BhZ2VzIiwKLSNpZmRlZiBDT05GSUdfSU9NTVVfU1VQUE9S VAorIyBpZmRlZiBDT05GSUdfSU9NTVVfU1VQUE9SVAogCSJucl9pb21tdV9wYWdlcyIsCi0j ZW5kaWYKLSNpZmRlZiBDT05GSUdfU1dBUAorIyBlbmRpZgorIyBpZmRlZiBDT05GSUdfU1dB UAogCSJucl9zd2FwY2FjaGVkIiwKLSNlbmRpZgotI2lmZGVmIENPTkZJR19OVU1BX0JBTEFO Q0lORworIyBlbmRpZgorIyBpZmRlZiBDT05GSUdfTlVNQV9CQUxBTkNJTkcKIAkicGdwcm9t b3RlX3N1Y2Nlc3MiLAogCSJwZ3Byb21vdGVfY2FuZGlkYXRlIiwKLSNlbmRpZgorIyBlbmRp ZgogCSJwZ2RlbW90ZV9rc3dhcGQiLAogCSJwZ2RlbW90ZV9kaXJlY3QiLAogCSJwZ2RlbW90 ZV9raHVnZXBhZ2VkIiwKQEAgLTEyODAsNyArMTI4Myw3IEBAIGNvbnN0IGNoYXIgKiBjb25z dCB2bXN0YXRfdGV4dFtdID0gewogCSJucl9tZW1tYXBfcGFnZXMiLAogCSJucl9tZW1tYXBf Ym9vdF9wYWdlcyIsCiAKLSNpZiBkZWZpbmVkKENPTkZJR19WTV9FVkVOVF9DT1VOVEVSUykg fHwgZGVmaW5lZChDT05GSUdfTUVNQ0cpCisjIGlmIGRlZmluZWQoQ09ORklHX1ZNX0VWRU5U X0NPVU5URVJTKSB8fCBkZWZpbmVkKENPTkZJR19NRU1DRykKIAkvKiBlbnVtIHZtX2V2ZW50 X2l0ZW0gY291bnRlcnMgKi8KIAkicGdwZ2luIiwKIAkicGdwZ291dCIsCkBAIC0xMzE0LDEw ICsxMzE3LDEwIEBAIGNvbnN0IGNoYXIgKiBjb25zdCB2bXN0YXRfdGV4dFtdID0gewogCSJw Z3N0ZWFsX2Fub24iLAogCSJwZ3N0ZWFsX2ZpbGUiLAogCi0jaWZkZWYgQ09ORklHX05VTUEK KyMgIGlmZGVmIENPTkZJR19OVU1BCiAJInpvbmVfcmVjbGFpbV9zdWNjZXNzIiwKIAkiem9u ZV9yZWNsYWltX2ZhaWxlZCIsCi0jZW5kaWYKKyMgIGVuZGlmCiAJInBnaW5vZGVzdGVhbCIs CiAJInNsYWJzX3NjYW5uZWQiLAogCSJrc3dhcGRfaW5vZGVzdGVhbCIsCkBAIC0xMzMxLDIx ICsxMzM0LDIxIEBAIGNvbnN0IGNoYXIgKiBjb25zdCB2bXN0YXRfdGV4dFtdID0gewogCSJk cm9wX3NsYWIiLAogCSJvb21fa2lsbCIsCiAKLSNpZmRlZiBDT05GSUdfTlVNQV9CQUxBTkNJ TkcKKyMgIGlmZGVmIENPTkZJR19OVU1BX0JBTEFOQ0lORwogCSJudW1hX3B0ZV91cGRhdGVz IiwKIAkibnVtYV9odWdlX3B0ZV91cGRhdGVzIiwKIAkibnVtYV9oaW50X2ZhdWx0cyIsCiAJ Im51bWFfaGludF9mYXVsdHNfbG9jYWwiLAogCSJudW1hX3BhZ2VzX21pZ3JhdGVkIiwKLSNl bmRpZgotI2lmZGVmIENPTkZJR19NSUdSQVRJT04KKyMgIGVuZGlmCisjICBpZmRlZiBDT05G SUdfTUlHUkFUSU9OCiAJInBnbWlncmF0ZV9zdWNjZXNzIiwKIAkicGdtaWdyYXRlX2ZhaWwi LAogCSJ0aHBfbWlncmF0aW9uX3N1Y2Nlc3MiLAogCSJ0aHBfbWlncmF0aW9uX2ZhaWwiLAog CSJ0aHBfbWlncmF0aW9uX3NwbGl0IiwKLSNlbmRpZgotI2lmZGVmIENPTkZJR19DT01QQUNU SU9OCisjICBlbmRpZgorIyAgaWZkZWYgQ09ORklHX0NPTVBBQ1RJT04KIAkiY29tcGFjdF9t aWdyYXRlX3NjYW5uZWQiLAogCSJjb21wYWN0X2ZyZWVfc2Nhbm5lZCIsCiAJImNvbXBhY3Rf aXNvbGF0ZWQiLApAQCAtMTM1NSwxNiArMTM1OCwxNiBAQCBjb25zdCBjaGFyICogY29uc3Qg dm1zdGF0X3RleHRbXSA9IHsKIAkiY29tcGFjdF9kYWVtb25fd2FrZSIsCiAJImNvbXBhY3Rf ZGFlbW9uX21pZ3JhdGVfc2Nhbm5lZCIsCiAJImNvbXBhY3RfZGFlbW9uX2ZyZWVfc2Nhbm5l ZCIsCi0jZW5kaWYKKyMgIGVuZGlmCiAKLSNpZmRlZiBDT05GSUdfSFVHRVRMQl9QQUdFCisj ICBpZmRlZiBDT05GSUdfSFVHRVRMQl9QQUdFCiAJImh0bGJfYnVkZHlfYWxsb2Nfc3VjY2Vz cyIsCiAJImh0bGJfYnVkZHlfYWxsb2NfZmFpbCIsCi0jZW5kaWYKLSNpZmRlZiBDT05GSUdf Q01BCisjICBlbmRpZgorIyAgaWZkZWYgQ09ORklHX0NNQQogCSJjbWFfYWxsb2Nfc3VjY2Vz cyIsCiAJImNtYV9hbGxvY19mYWlsIiwKLSNlbmRpZgorIyAgZW5kaWYKIAkidW5ldmljdGFi bGVfcGdzX2N1bGxlZCIsCiAJInVuZXZpY3RhYmxlX3Bnc19zY2FubmVkIiwKIAkidW5ldmlj dGFibGVfcGdzX3Jlc2N1ZWQiLApAQCAtMTM3Myw3ICsxMzc2LDcgQEAgY29uc3QgY2hhciAq IGNvbnN0IHZtc3RhdF90ZXh0W10gPSB7CiAJInVuZXZpY3RhYmxlX3Bnc19jbGVhcmVkIiwK IAkidW5ldmljdGFibGVfcGdzX3N0cmFuZGVkIiwKIAotI2lmZGVmIENPTkZJR19UUkFOU1BB UkVOVF9IVUdFUEFHRQorIyAgaWZkZWYgQ09ORklHX1RSQU5TUEFSRU5UX0hVR0VQQUdFCiAJ InRocF9mYXVsdF9hbGxvYyIsCiAJInRocF9mYXVsdF9mYWxsYmFjayIsCiAJInRocF9mYXVs dF9mYWxsYmFja19jaGFyZ2UiLApAQCAtMTM5MCw3OCArMTM5Myw3OCBAQCBjb25zdCBjaGFy ICogY29uc3Qgdm1zdGF0X3RleHRbXSA9IHsKIAkidGhwX3NjYW5fZXhjZWVkX25vbmVfcHRl IiwKIAkidGhwX3NjYW5fZXhjZWVkX3N3YXBfcHRlIiwKIAkidGhwX3NjYW5fZXhjZWVkX3No YXJlX3B0ZSIsCi0jaWZkZWYgQ09ORklHX0hBVkVfQVJDSF9UUkFOU1BBUkVOVF9IVUdFUEFH RV9QVUQKKyMgICBpZmRlZiBDT05GSUdfSEFWRV9BUkNIX1RSQU5TUEFSRU5UX0hVR0VQQUdF X1BVRAogCSJ0aHBfc3BsaXRfcHVkIiwKLSNlbmRpZgorIyAgIGVuZGlmCiAJInRocF96ZXJv X3BhZ2VfYWxsb2MiLAogCSJ0aHBfemVyb19wYWdlX2FsbG9jX2ZhaWxlZCIsCiAJInRocF9z d3BvdXQiLAogCSJ0aHBfc3dwb3V0X2ZhbGxiYWNrIiwKLSNlbmRpZgotI2lmZGVmIENPTkZJ R19NRU1PUllfQkFMTE9PTgorIyAgZW5kaWYgLypDT05GSUdfVFJBTlNQQVJFTlRfSFVHRVBB R0UgKi8KKyMgIGlmZGVmIENPTkZJR19NRU1PUllfQkFMTE9PTgogCSJiYWxsb29uX2luZmxh dGUiLAogCSJiYWxsb29uX2RlZmxhdGUiLAotI2lmZGVmIENPTkZJR19CQUxMT09OX0NPTVBB Q1RJT04KKyMgICBpZmRlZiBDT05GSUdfQkFMTE9PTl9DT01QQUNUSU9OCiAJImJhbGxvb25f bWlncmF0ZSIsCi0jZW5kaWYKLSNlbmRpZiAvKiBDT05GSUdfTUVNT1JZX0JBTExPT04gKi8K LSNpZmRlZiBDT05GSUdfREVCVUdfVExCRkxVU0gKKyMgICBlbmRpZgorIyAgZW5kaWYgLyog Q09ORklHX01FTU9SWV9CQUxMT09OICovCisjICBpZmRlZiBDT05GSUdfREVCVUdfVExCRkxV U0gKIAkibnJfdGxiX3JlbW90ZV9mbHVzaCIsCiAJIm5yX3RsYl9yZW1vdGVfZmx1c2hfcmVj ZWl2ZWQiLAogCSJucl90bGJfbG9jYWxfZmx1c2hfYWxsIiwKIAkibnJfdGxiX2xvY2FsX2Zs dXNoX29uZSIsCi0jZW5kaWYgLyogQ09ORklHX0RFQlVHX1RMQkZMVVNIICovCisjICBlbmRp ZiAvKiBDT05GSUdfREVCVUdfVExCRkxVU0ggKi8KIAotI2lmZGVmIENPTkZJR19TV0FQCisj ICBpZmRlZiBDT05GSUdfU1dBUAogCSJzd2FwX3JhIiwKIAkic3dhcF9yYV9oaXQiLAotI2lm ZGVmIENPTkZJR19LU00KKyMgICBpZmRlZiBDT05GSUdfS1NNCiAJImtzbV9zd3Bpbl9jb3B5 IiwKLSNlbmRpZgotI2VuZGlmCi0jaWZkZWYgQ09ORklHX0tTTQorIyAgIGVuZGlmIC8qIENP TkZJR19LU00gKi8KKyMgIGVuZGlmIC8qIENPTkZJR19TV0FQICovCisjICBpZmRlZiBDT05G SUdfS1NNCiAJImNvd19rc20iLAotI2VuZGlmCi0jaWZkZWYgQ09ORklHX1pTV0FQCisjICBl bmRpZgorIyAgaWZkZWYgQ09ORklHX1pTV0FQCiAJInpzd3BpbiIsCiAJInpzd3BvdXQiLAog CSJ6c3dwd2IiLAotI2VuZGlmCi0jaWZkZWYgQ09ORklHX1g4NgorIyAgZW5kaWYKKyMgIGlm ZGVmIENPTkZJR19YODYKIAkiZGlyZWN0X21hcF9sZXZlbDJfc3BsaXRzIiwKIAkiZGlyZWN0 X21hcF9sZXZlbDNfc3BsaXRzIiwKLSNlbmRpZgotI2lmZGVmIENPTkZJR19QRVJfVk1BX0xP Q0tfU1RBVFMKKyMgIGVuZGlmCisjICBpZmRlZiBDT05GSUdfUEVSX1ZNQV9MT0NLX1NUQVRT CiAJInZtYV9sb2NrX3N1Y2Nlc3MiLAogCSJ2bWFfbG9ja19hYm9ydCIsCiAJInZtYV9sb2Nr X3JldHJ5IiwKIAkidm1hX2xvY2tfbWlzcyIsCi0jZW5kaWYKLSNpZmRlZiBDT05GSUdfREVC VUdfU1RBQ0tfVVNBR0UKKyMgIGVuZGlmCisjICBpZmRlZiBDT05GSUdfREVCVUdfU1RBQ0tf VVNBR0UKIAkia3N0YWNrXzFrIiwKLSNpZiBUSFJFQURfU0laRSA+IDEwMjQKKyMgICBpZiBU SFJFQURfU0laRSA+IDEwMjQKIAkia3N0YWNrXzJrIiwKLSNlbmRpZgotI2lmIFRIUkVBRF9T SVpFID4gMjA0OAorIyAgIGVuZGlmCisjICAgaWYgVEhSRUFEX1NJWkUgPiAyMDQ4CiAJImtz dGFja180ayIsCi0jZW5kaWYKLSNpZiBUSFJFQURfU0laRSA+IDQwOTYKKyMgICBlbmRpZgor IyAgIGlmIFRIUkVBRF9TSVpFID4gNDA5NgogCSJrc3RhY2tfOGsiLAotI2VuZGlmCi0jaWYg VEhSRUFEX1NJWkUgPiA4MTkyCisjICAgZW5kaWYKKyMgICBpZiBUSFJFQURfU0laRSA+IDgx OTIKIAkia3N0YWNrXzE2ayIsCi0jZW5kaWYKLSNpZiBUSFJFQURfU0laRSA+IDE2Mzg0Cisj ICAgZW5kaWYKKyMgICBpZiBUSFJFQURfU0laRSA+IDE2Mzg0CiAJImtzdGFja18zMmsiLAot I2VuZGlmCi0jaWYgVEhSRUFEX1NJWkUgPiAzMjc2OAorIyAgIGVuZGlmCisjICAgaWYgVEhS RUFEX1NJWkUgPiAzMjc2OAogCSJrc3RhY2tfNjRrIiwKLSNlbmRpZgotI2lmIFRIUkVBRF9T SVpFID4gNjU1MzYKKyMgICBlbmRpZgorIyAgIGlmIFRIUkVBRF9TSVpFID4gNjU1MzYKIAki a3N0YWNrX3Jlc3QiLAotI2VuZGlmCi0jZW5kaWYKLSNlbmRpZiAvKiBDT05GSUdfVk1fRVZF TlRfQ09VTlRFUlMgfHwgQ09ORklHX01FTUNHICovCisjICAgZW5kaWYKKyMgIGVuZGlmIC8q IENPTkZJR19ERUJVR19TVEFDS19VU0FHRSAqLworIyBlbmRpZiAvKiBDT05GSUdfVk1fRVZF TlRfQ09VTlRFUlMgfHwgQ09ORklHX01FTUNHICovCiB9OwogI2VuZGlmIC8qIENPTkZJR19Q Uk9DX0ZTIHx8IENPTkZJR19TWVNGUyB8fCBDT05GSUdfTlVNQSB8fCBDT05GSUdfTUVNQ0cg Ki8KIApAQCAtMTUxNSw3ICsxNTE4LDcgQEAgc3RhdGljIHZvaWQgd2Fsa196b25lc19pbl9u b2RlKHN0cnVjdCBzZXFfZmlsZSAqbSwgcGdfZGF0YV90ICpwZ2RhdCwKIAkJCXNwaW5fdW5s b2NrX2lycXJlc3RvcmUoJnpvbmUtPmxvY2ssIGZsYWdzKTsKIAl9CiB9Ci0jZW5kaWYKKyNl bmRpZiAvKiBDT05GSUdfREVCVUdfRlMgJiYgQ09ORklHX0NPTVBBQ1RJT04gfHwgQ09ORklH X1BST0NfRlMgKi8KIAogI2lmZGVmIENPTkZJR19QUk9DX0ZTCiBzdGF0aWMgdm9pZCBmcmFn X3Nob3dfcHJpbnQoc3RydWN0IHNlcV9maWxlICptLCBwZ19kYXRhX3QgKnBnZGF0LApAQCAt MTY1NCw3ICsxNjU3LDcgQEAgc3RhdGljIHZvaWQgcGFnZXR5cGVpbmZvX3Nob3dibG9ja2Nv dW50KHN0cnVjdCBzZXFfZmlsZSAqbSwgdm9pZCAqYXJnKQogICovCiBzdGF0aWMgdm9pZCBw YWdldHlwZWluZm9fc2hvd21peGVkY291bnQoc3RydWN0IHNlcV9maWxlICptLCBwZ19kYXRh X3QgKnBnZGF0KQogewotI2lmZGVmIENPTkZJR19QQUdFX09XTkVSCisjIGlmZGVmIENPTkZJ R19QQUdFX09XTkVSCiAJaW50IG10eXBlOwogCiAJaWYgKCFzdGF0aWNfYnJhbmNoX3VubGlr ZWx5KCZwYWdlX293bmVyX2luaXRlZCkpCkBAIC0xNjY5LDcgKzE2NzIsNyBAQCBzdGF0aWMg dm9pZCBwYWdldHlwZWluZm9fc2hvd21peGVkY291bnQoc3RydWN0IHNlcV9maWxlICptLCBw Z19kYXRhX3QgKnBnZGF0KQogCiAJd2Fsa196b25lc19pbl9ub2RlKG0sIHBnZGF0LCB0cnVl LCB0cnVlLAogCQlwYWdldHlwZWluZm9fc2hvd21peGVkY291bnRfcHJpbnQpOwotI2VuZGlm IC8qIENPTkZJR19QQUdFX09XTkVSICovCisjIGVuZGlmIC8qIENPTkZJR19QQUdFX09XTkVS ICovCiB9CiAKIC8qCkBAIC0xNzc3LDExICsxNzgwLDExIEBAIHN0YXRpYyB2b2lkIHpvbmVp bmZvX3Nob3dfcHJpbnQoc3RydWN0IHNlcV9maWxlICptLCBwZ19kYXRhX3QgKnBnZGF0LAog CQlzZXFfcHJpbnRmKG0sICJcbiAgICAgICUtMTJzICVsdSIsIHpvbmVfc3RhdF9uYW1lKGkp LAogCQkJICAgem9uZV9wYWdlX3N0YXRlKHpvbmUsIGkpKTsKIAotI2lmZGVmIENPTkZJR19O VU1BCisjIGlmZGVmIENPTkZJR19OVU1BCiAJZm9yIChpID0gMDsgaSA8IE5SX1ZNX05VTUFf RVZFTlRfSVRFTVM7IGkrKykKIAkJc2VxX3ByaW50ZihtLCAiXG4gICAgICAlLTEycyAlbHUi LCBudW1hX3N0YXRfbmFtZShpKSwKIAkJCSAgIHpvbmVfbnVtYV9ldmVudF9zdGF0ZSh6b25l LCBpKSk7Ci0jZW5kaWYKKyMgZW5kaWYKIAogCXNlcV9wcmludGYobSwgIlxuICBwYWdlc2V0 cyIpOwogCWZvcl9lYWNoX29ubGluZV9jcHUoaSkgewpAQCAtMTc5OCwxMSArMTgwMSwxMSBA QCBzdGF0aWMgdm9pZCB6b25laW5mb19zaG93X3ByaW50KHN0cnVjdCBzZXFfZmlsZSAqbSwg cGdfZGF0YV90ICpwZ2RhdCwKIAkJCSAgIHBjcC0+Y291bnQsCiAJCQkgICBwY3AtPmhpZ2gs CiAJCQkgICBwY3AtPmJhdGNoKTsKLSNpZmRlZiBDT05GSUdfU01QCisjIGlmZGVmIENPTkZJ R19TTVAKIAkJcHpzdGF0cyA9IHBlcl9jcHVfcHRyKHpvbmUtPnBlcl9jcHVfem9uZXN0YXRz LCBpKTsKIAkJc2VxX3ByaW50ZihtLCAiXG4gIHZtIHN0YXRzIHRocmVzaG9sZDogJWQiLAog CQkJCXB6c3RhdHMtPnN0YXRfdGhyZXNob2xkKTsKLSNlbmRpZgorIyBlbmRpZgogCX0KIAlz ZXFfcHJpbnRmKG0sCiAJCSAgICJcbiAgbm9kZV91bnJlY2xhaW1hYmxlOiAgJXUiCkBAIC0x ODU4LDExICsxODYxLDExIEBAIHN0YXRpYyB2b2lkICp2bXN0YXRfc3RhcnQoc3RydWN0IHNl cV9maWxlICptLCBsb2ZmX3QgKnBvcykKIAkJdltpXSA9IGdsb2JhbF96b25lX3BhZ2Vfc3Rh dGUoaSk7CiAJdiArPSBOUl9WTV9aT05FX1NUQVRfSVRFTVM7CiAKLSNpZmRlZiBDT05GSUdf TlVNQQorIyBpZmRlZiBDT05GSUdfTlVNQQogCWZvciAoaSA9IDA7IGkgPCBOUl9WTV9OVU1B X0VWRU5UX0lURU1TOyBpKyspCiAJCXZbaV0gPSBnbG9iYWxfbnVtYV9ldmVudF9zdGF0ZShp KTsKIAl2ICs9IE5SX1ZNX05VTUFfRVZFTlRfSVRFTVM7Ci0jZW5kaWYKKyMgZW5kaWYKIAog CWZvciAoaSA9IDA7IGkgPCBOUl9WTV9OT0RFX1NUQVRfSVRFTVM7IGkrKykgewogCQl2W2ld ID0gZ2xvYmFsX25vZGVfcGFnZV9zdGF0ZV9wYWdlcyhpKTsKQEAgLTE4NzcsMTEgKzE4ODAs MTEgQEAgc3RhdGljIHZvaWQgKnZtc3RhdF9zdGFydChzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIGxv ZmZfdCAqcG9zKQogCXZbTlJfTUVNTUFQX0JPT1RfUEFHRVNdID0gYXRvbWljX2xvbmdfcmVh ZCgmbnJfbWVtbWFwX2Jvb3RfcGFnZXMpOwogCXYgKz0gTlJfVk1fU1RBVF9JVEVNUzsKIAot I2lmZGVmIENPTkZJR19WTV9FVkVOVF9DT1VOVEVSUworIyBpZmRlZiBDT05GSUdfVk1fRVZF TlRfQ09VTlRFUlMKIAlhbGxfdm1fZXZlbnRzKHYpOwogCXZbUEdQR0lOXSAvPSAyOwkJLyog c2VjdG9ycyAtPiBrYnl0ZXMgKi8KIAl2W1BHUEdPVVRdIC89IDI7Ci0jZW5kaWYKKyMgZW5k aWYKIAlyZXR1cm4gKHVuc2lnbmVkIGxvbmcgKiltLT5wcml2YXRlICsgKnBvczsKIH0KIApA QCAtMTkzMCw3ICsxOTMzLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBzZXFfb3BlcmF0aW9u cyB2bXN0YXRfb3AgPSB7CiBzdGF0aWMgREVGSU5FX1BFUl9DUFUoc3RydWN0IGRlbGF5ZWRf d29yaywgdm1zdGF0X3dvcmspOwogaW50IHN5c2N0bF9zdGF0X2ludGVydmFsIF9fcmVhZF9t b3N0bHkgPSBIWjsKIAotI2lmZGVmIENPTkZJR19QUk9DX0ZTCisjIGlmZGVmIENPTkZJR19Q Uk9DX0ZTCiBzdGF0aWMgdm9pZCByZWZyZXNoX3ZtX3N0YXRzKHN0cnVjdCB3b3JrX3N0cnVj dCAqd29yaykKIHsKIAlyZWZyZXNoX2NwdV92bV9zdGF0cyh0cnVlKTsKQEAgLTE5OTMsNyAr MTk5Niw3IEBAIGludCB2bXN0YXRfcmVmcmVzaChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaXRlLAogCQkqbGVucCA9IDA7CiAJcmV0dXJuIDA7CiB9Ci0jZW5kaWYg LyogQ09ORklHX1BST0NfRlMgKi8KKyMgZW5kaWYgLyogQ09ORklHX1BST0NfRlMgKi8KIAog c3RhdGljIHZvaWQgdm1zdGF0X3VwZGF0ZShzdHJ1Y3Qgd29ya19zdHJ1Y3QgKncpCiB7CkBA IC0yMTcyLDcgKzIxNzUsNyBAQCBzdGF0aWMgaW50IF9faW5pdCB2bXN0YXRfbGF0ZV9pbml0 KHZvaWQpCiAJcmV0dXJuIDA7CiB9CiBsYXRlX2luaXRjYWxsKHZtc3RhdF9sYXRlX2luaXQp OwotI2VuZGlmCisjZW5kaWYgLyogQ09ORklHX1NNUCAqLwogCiBzdHJ1Y3Qgd29ya3F1ZXVl X3N0cnVjdCAqbW1fcGVyY3B1X3dxOwogCkBAIC0yMTk5LDEzICsyMjAyLDEzIEBAIHZvaWQg X19pbml0IGluaXRfbW1faW50ZXJuYWxzKHZvaWQpCiAJY3B1c19yZWFkX3VubG9jaygpOwog CiAJc3RhcnRfc2hlcGhlcmRfdGltZXIoKTsKLSNlbmRpZgorI2VuZGlmIC8qIENPTkZJR19T TVAgKi8KICNpZmRlZiBDT05GSUdfUFJPQ19GUwogCXByb2NfY3JlYXRlX3NlcSgiYnVkZHlp bmZvIiwgMDQ0NCwgTlVMTCwgJmZyYWdtZW50YXRpb25fb3ApOwogCXByb2NfY3JlYXRlX3Nl cSgicGFnZXR5cGVpbmZvIiwgMDQwMCwgTlVMTCwgJnBhZ2V0eXBlaW5mb19vcCk7CiAJcHJv Y19jcmVhdGVfc2VxKCJ2bXN0YXQiLCAwNDQ0LCBOVUxMLCAmdm1zdGF0X29wKTsKIAlwcm9j X2NyZWF0ZV9zZXEoInpvbmVpbmZvIiwgMDQ0NCwgTlVMTCwgJnpvbmVpbmZvX29wKTsKLSNl bmRpZgorI2VuZGlmIC8qIENPTkZJR19QUk9DX0ZTICovCiB9CiAKICNpZiBkZWZpbmVkKENP TkZJR19ERUJVR19GUykgJiYgZGVmaW5lZChDT05GSUdfQ09NUEFDVElPTikKQEAgLTIzNDEs NCArMjM0NCw0IEBAIHN0YXRpYyBpbnQgX19pbml0IGV4dGZyYWdfZGVidWdfaW5pdCh2b2lk KQogCiBtb2R1bGVfaW5pdChleHRmcmFnX2RlYnVnX2luaXQpOwogCi0jZW5kaWYKKyNlbmRp ZiAvKiBDT05GSUdfREVCVUdfRlMgJiYgQ09ORklHX0NPTVBBQ1RJT04gKi8K --------------UrrSEjECmg2nXc09wJo2Ci1r--