{"id":807347,"url":"http://patchwork.ozlabs.org/api/patches/807347/?format=json","web_url":"http://patchwork.ozlabs.org/project/ubuntu-kernel/patch/20170829231812.18206-2-dann.frazier@canonical.com/","project":{"id":15,"url":"http://patchwork.ozlabs.org/api/projects/15/?format=json","name":"Ubuntu Kernel","link_name":"ubuntu-kernel","list_id":"kernel-team.lists.ubuntu.com","list_email":"kernel-team@lists.ubuntu.com","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20170829231812.18206-2-dann.frazier@canonical.com>","list_archive_url":null,"date":"2017-08-29T23:18:11","name":"[1/2,Artful] clocksource/drivers/arm_arch_timer: Fix mem frame loop initialization","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"4445ddbea79cac698ed0ab8edebc148af19a764e","submitter":{"id":9337,"url":"http://patchwork.ozlabs.org/api/people/9337/?format=json","name":"dann frazier","email":"dann.frazier@canonical.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/ubuntu-kernel/patch/20170829231812.18206-2-dann.frazier@canonical.com/mbox/","series":[{"id":502,"url":"http://patchwork.ozlabs.org/api/series/502/?format=json","web_url":"http://patchwork.ozlabs.org/project/ubuntu-kernel/list/?series=502","date":"2017-08-29T23:18:10","name":"[1/2,Artful] clocksource/drivers/arm_arch_timer: Fix mem frame loop initialization","version":1,"mbox":"http://patchwork.ozlabs.org/series/502/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/807347/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/807347/checks/","tags":{},"related":[],"headers":{"Return-Path":"<kernel-team-bounces@lists.ubuntu.com>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.ubuntu.com\n\t(client-ip=91.189.94.19; helo=huckleberry.canonical.com;\n\tenvelope-from=kernel-team-bounces@lists.ubuntu.com;\n\treceiver=<UNKNOWN>)","Received":["from huckleberry.canonical.com (huckleberry.canonical.com\n\t[91.189.94.19])\n\tby ozlabs.org (Postfix) with ESMTP id 3xhl27344Xz9sPt;\n\tWed, 30 Aug 2017 09:18:55 +1000 (AEST)","from localhost ([127.0.0.1] helo=huckleberry.canonical.com)\n\tby huckleberry.canonical.com with esmtp (Exim 4.76)\n\t(envelope-from <kernel-team-bounces@lists.ubuntu.com>)\n\tid 1dmpmW-0003LK-PP; Tue, 29 Aug 2017 23:18:52 +0000","from complete.lackof.org ([198.49.126.79])\n\tby huckleberry.canonical.com with esmtps\n\t(TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.76) (envelope-from <dannf@dannf.org>) id 1dmpm8-00038V-29\n\tfor kernel-team@lists.ubuntu.com; Tue, 29 Aug 2017 23:18:28 +0000","from localhost (c-107-2-141-92.hsd1.co.comcast.net [107.2.141.92])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (Client did not present a certificate)\n\tby complete.lackof.org (Postfix) with ESMTPSA id 402AA33E0064\n\tfor <kernel-team@lists.ubuntu.com>;\n\tTue, 29 Aug 2017 17:18:26 -0600 (MDT)"],"From":"dann frazier <dann.frazier@canonical.com>","To":"kernel-team@lists.ubuntu.com","Subject":"[PATCH 1/2][Artful] clocksource/drivers/arm_arch_timer: Fix mem\n\tframe loop initialization","Date":"Tue, 29 Aug 2017 17:18:11 -0600","Message-Id":"<20170829231812.18206-2-dann.frazier@canonical.com>","X-Mailer":"git-send-email 2.14.1","In-Reply-To":"<20170829231812.18206-1-dann.frazier@canonical.com>","References":"<20170829231812.18206-1-dann.frazier@canonical.com>","X-Spam-Status":"No, score=0.0 required=5.0 tests=UNPARSEABLE_RELAY\n\tautolearn=unavailable version=3.3.2","X-Spam-Checker-Version":"SpamAssassin 3.3.2 (2011-06-06) on\n\tcomplete.lackof.org","X-BeenThere":"kernel-team@lists.ubuntu.com","X-Mailman-Version":"2.1.14","Precedence":"list","List-Id":"Kernel team discussions <kernel-team.lists.ubuntu.com>","List-Unsubscribe":"<https://lists.ubuntu.com/mailman/options/kernel-team>,\n\t<mailto:kernel-team-request@lists.ubuntu.com?subject=unsubscribe>","List-Archive":"<https://lists.ubuntu.com/archives/kernel-team>","List-Post":"<mailto:kernel-team@lists.ubuntu.com>","List-Help":"<mailto:kernel-team-request@lists.ubuntu.com?subject=help>","List-Subscribe":"<https://lists.ubuntu.com/mailman/listinfo/kernel-team>,\n\t<mailto:kernel-team-request@lists.ubuntu.com?subject=subscribe>","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"kernel-team-bounces@lists.ubuntu.com","Sender":"kernel-team-bounces@lists.ubuntu.com"},"content":"From: Matthias Kaehlcke <mka@chromium.org>\n\nBugLink: https://bugs.launchpad.net/bugs/1713821\n\nThe loop to find the best memory frame in arch_timer_mem_acpi_init()\ninitializes the loop counter with itself ('i = i'), which is suspicious\nin the first place and pointed out by clang. The loop condition is\n'i < timer_count' and a prior for loop exits when 'i' reaches\n'timer_count', therefore the second loop is never executed.\n\nInitialize the loop counter with 0 to iterate over all timers, which\nsupposedly was the intention before the typo monster attacked.\n\nFixes: c2743a36765d3 (\"clocksource: arm_arch_timer: add GTDT support for memory-mapped timer\")\nSigned-off-by: Matthias Kaehlcke <mka@chromium.org>\nReported-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>\nAcked-by: Mark Rutland <mark.rutland@arm.com>\nSigned-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>\n(cherry picked from commit d197f7988721221fac64f899efd7657c15281810)\nSigned-off-by: dann frazier <dann.frazier@canonical.com>\n---\n drivers/clocksource/arm_arch_timer.c | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)","diff":"diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c\nindex 8b5c30062d99..6568e6a10840 100644\n--- a/drivers/clocksource/arm_arch_timer.c\n+++ b/drivers/clocksource/arm_arch_timer.c\n@@ -1440,7 +1440,7 @@ static int __init arch_timer_mem_acpi_init(int platform_timer_count)\n \t * While unlikely, it's theoretically possible that none of the frames\n \t * in a timer expose the combination of feature we want.\n \t */\n-\tfor (i = i; i < timer_count; i++) {\n+\tfor (i = 0; i < timer_count; i++) {\n \t\ttimer = &timers[i];\n \n \t\tframe = arch_timer_mem_find_best_frame(timer);\n","prefixes":["1/2","Artful"]}