Message ID | 20180206203048.11096-27-rkagan@virtuozzo.com |
---|---|
State | New |
Headers | show
Return-Path: <qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org> X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=<UNKNOWN>) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="FYfCVglt"; dkim-atps=neutral Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zbcq11qC0z9s7F for <incoming@patchwork.ozlabs.org>; Wed, 7 Feb 2018 08:22:05 +1100 (AEDT) Received: from localhost ([::1]:35608 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>) id 1ejAgl-00005P-BZ for incoming@patchwork.ozlabs.org; Tue, 06 Feb 2018 16:22:03 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44995) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <rkagan@virtuozzo.com>) id 1ej9uF-0001GV-QR for qemu-devel@nongnu.org; Tue, 06 Feb 2018 15:31:56 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <rkagan@virtuozzo.com>) id 1ej9uE-0003LW-Bx for qemu-devel@nongnu.org; Tue, 06 Feb 2018 15:31:55 -0500 Received: from mail-db5eur01on0132.outbound.protection.outlook.com ([104.47.2.132]:39281 helo=EUR01-DB5-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from <rkagan@virtuozzo.com>) id 1ej9uE-0003KQ-4C for qemu-devel@nongnu.org; Tue, 06 Feb 2018 15:31:54 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=jTiD4ss5ViomQ1odMmGb43F2UO0eyiLrXQ9m7F8cBM4=; b=FYfCVgltsrbLA+bmCVEhfvPGS2aQ8EN2Utdv2b100nqJldgRKiFEPQNvWVTO3GywSILt63x5QRY5iHOieybQwaLtf8NHERJGKCsXSyf+PW8n/WJBjrry1D4WBOnORN8hOG/TmAS3yWF0qh0ORRWN2pazWg/pELPbtsh9d96EeJY= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=rkagan@virtuozzo.com; Received: from rkaganb.sw.ru (195.214.232.6) by VI1PR0801MB1983.eurprd08.prod.outlook.com (2603:10a6:800:8a::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.464.11; Tue, 6 Feb 2018 20:31:51 +0000 From: Roman Kagan <rkagan@virtuozzo.com> To: qemu-devel@nongnu.org Date: Tue, 6 Feb 2018 23:30:40 +0300 Message-Id: <20180206203048.11096-27-rkagan@virtuozzo.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180206203048.11096-1-rkagan@virtuozzo.com> References: <20180206203048.11096-1-rkagan@virtuozzo.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [195.214.232.6] X-ClientProxiedBy: HE1PR0301CA0008.eurprd03.prod.outlook.com (2603:10a6:3:76::18) To VI1PR0801MB1983.eurprd08.prod.outlook.com (2603:10a6:800:8a::16) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 86057c6a-cbf6-4619-8cd4-08d56da0a815 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307)(7153060)(7193020); SRVR:VI1PR0801MB1983; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1983; 3:hInon0UOb5cXLjnMz77gj2Bq54GSvYktFG3ldJLxOn93LTphnFttplrPZhsDPCVIN2J8NAW+fObWEmmfgBSq/WtslsIEYoI+3DEI1mZq+vUhBFrNi1kY1pOdZGVrdHFaIhWEK6XlFN9DQe3v4rC7vMFmWsz+LSrP04DzTL/0s8U6hhW4OycUGszx6INilPf3iRW6JTwX/cOAb4M13ZRpWiPvCSR7Upsgyfbpv7qTgrshJp5SfV9agvGd3voxzFc7; 25:4/OUOS01H5YizhWdkNAkhaersgKS+p78ODHwfbzJ8tGrminmo7KKO1j/ISkZ0htnabbC43Uc54lNR7aRgoZmGeVEx61S4LtpLIVSeGhGN9wyPfLUzeZqL+N+Az7KC4eZ4+lxFBaIBstp7Und8ooKn9vYgp42qYnDHsY4kbbJtR102Dtb2/tU1sNmzooHpoKq/D2pM7egNUeEEIMgZ6q0XGMIonP1BzZEqV7U2j1q5XxxWm4IxU/ykd2xkAV+LSyHfVHea7UIV0fufnaq1a64df3OfV5bSX3R3+bCRboC5EkD3Wo1mxMPWhTJoPZkg3H2kYM6SBptQXU++i0/ST5RSg==; 31:UAvof2zQ3qaEZ2Ffikx6drw3PCPFb2+jRvdjlvsXx45ftqaLP+fAN1gyVBGryS3wpKAqAWh9KYT1muy2SUUmTxCARcKta5RZB3mbhhl89+qMxt4oEk8Uhb80wcMr4EgFG0AviEh+6/9zYHbegJCa24hoetVPFGTd7AO1QNH9MrhjO3KgISwEZS+kpXaZq1SdF0Iyp6APE2AsMfLlmG3mvRsjeWmUiOPICmXxllwRAMk= X-MS-TrafficTypeDiagnostic: VI1PR0801MB1983: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1983; 20:Cg4IU7m1Wnclu4Bje7OOCiaUg1Z5SZHUJkepBHguswZSI0Ig0CI5TZv+Q81nvgQNP5GasN+0nDUUoS+9O9eULiYAZsjqTq+bqGCON/2aSLS1hjJF1I35ziIxF5Fz9dxJcTC0OoZnRM7sM0CpuifBfrIF4B5Q0nYMBLvSFfmTAoPI5kq/DDy3l+z/BciJKlND3Re3zm9HcxvJp2v1kuD7e3ZCOGKytQSPpHOt36kLT0PuDOuWl0yZ6rVFfR4dR2Yx6NXsbuqaw5FJXMEDR6xl2OZEijLhj4BOTh/gYfk1q49EDqLoBUaIWJU7zWTfluQmzsrHHWCz1vl6fQauXoVFjFpE/wuVFoA+KaR63fnf8SV9QOZwmBhSWHbmkAKOoGzVXfiErdq8gtJPtZyXljik0pUfh5/56jCCEtvIa12JyII=; 4:rkxifuFLiV0He6wDMLH2wZWkZ/bLcb7fYGVXW1EUISKv1JDVEBJivFG8tNdo2US/dFs0EtcjWquw+WMpXiUELye9caX77PvlWIS1ZaSpqQfqvOiGsU4C4w9mxntAN71jLePt73eY4VmqGjhxg7fz/SR+bgMT4b5K1uZWmHmXL8HOWOligS4You68SMqjrhjlDwQk7QX1yqkNNvnXeebEm4E8B9vI5D9O6iaNAfburACNfShyvmb7cZfeMzPSBT33jszmuIYntsntihJKIQH/mA== X-Microsoft-Antispam-PRVS: <VI1PR0801MB19830F184FD934FEF2DDB1FFC9FD0@VI1PR0801MB1983.eurprd08.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040501)(2401047)(5005006)(8121501046)(3002001)(93006095)(93001095)(3231101)(2400082)(944501161)(10201501046)(6041288)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(20161123562045)(20161123560045)(6072148)(201708071742011); SRVR:VI1PR0801MB1983; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0801MB1983; X-Forefront-PRVS: 0575F81B58 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(1496009)(396003)(366004)(376002)(39380400002)(39850400004)(346002)(189003)(199004)(16586007)(53936002)(305945005)(54906003)(7736002)(3846002)(316002)(105586002)(2361001)(106356001)(2351001)(6116002)(1076002)(50226002)(8936002)(81156014)(5660300001)(8676002)(81166006)(7416002)(2950100002)(6666003)(6916009)(76176011)(575784001)(86362001)(68736007)(66066001)(16526019)(47776003)(50466002)(4326008)(97736004)(26005)(6512007)(51416003)(2906002)(52116002)(386003)(6506007)(59450400001)(48376002)(55236004)(36756003)(53416004)(69596002)(6486002)(478600001)(186003)(25786009)(217873001); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR0801MB1983; H:rkaganb.sw.ru; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: virtuozzo.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0801MB1983; 23:5Zbz19cCok334Yk/uOxewNMrIpJSXgHtArNxPuB?= JS6ao23sRdFFqyfWDvl6rzfEUcu1blS2tatCp0ZH40Oy1csWlGAKKoaxtYbscoz0hrgTOnyUOhnfpZ3KX2OXD0jiGWOsz4uECRWBr53dmFVkjoBvaNJPTWyH4os6ZeH6ElLFqUeRWPPVSTJcNkw2vpQWMs/q+lulmoV/GQxHtDQCfmAyy/8hKOIeOOTEKKbSVkP+JKXrgjIcZ4jLMU30w42FfZTXsQlB43cS7O+l+idBPqkbwP0GcdDQOuEXnfZwUOzLfstGWuMKNwTbgz8/4NU78Rx0H9696D727MjyEpS8x66ImLtEFCI8HjUd39FlS/wemEV2x6/mb3w+6s4pZvJ0G6HqEclKw4S1/ClCVknCcPbiCBmjFoc6Vblfz+jqMIC7zV2mz/m1dA3oSvmC0M09hTL7T1z+AL5pvOo+ti4iiNTN2vjajnvwFo6T2ZdylGMREzU+fVe83UIKJ1oxpcjlrVD/nNoAi5rnWF6x1ijXPE2Pqzc6zAnZ4pazEY6pn3bsS9kRneBXCZXjBxK1RHQiXNZmWLBUgq4/5QPjnUQrUWmMBEGka5uQGJCEI9iI7188Fhaf+nmoCyIDr7C6bYZSNrsUJxCT0irgT5GBzZt1uWTn7kv8yE1SqiZ2O5owVruhc7/2T3ehW/3++xox2z5sGO5WPdiw/K1+krRdult9fuPSobo/iP/rXm3vKTg8s+nR6Rx9Y+H9gos/VGQm+pha8Rg77RBn2DwcvAMs7gfWnHf6WNADwPuv00WzJKavtWloK6iacGU/h6ryyhdyt2KNb1nvPc2gsuBLY2dA9e/k/6H6S3iR9Gk5tP5mwo9Ibh+qKeuvCYcOJqoNFhbymksyPslKnxMRUJTJLeHfI2Dm/ZOe6eZhI8f+L+AHSABiwT/ibwqd4gRf1Qd3PS5Oc71xoVUmfwCS5UjdtY5o45JrVY/MpBhy4buOJaN/933NlduGnLFh1ojkEG5ewO+F2bd+rCCG4S0xVZhx8b9akUZGligni4w0CoTFSJQM38HJ1T7AwZmHOqRlm4ecud0SfnoNLeSnYtn9dRplqpLadjETUogJwM50n4bkuLO2aSBvFC12B5AZHDm92Tj+BZ1jYyVyt5+ESNqOM/SYRzdvAktHc8+0qaMO4Txvzn1zMaX8Wk13JmHrEskbfi6GAibcudo/nIEqyOpM5mp8pjsArH34LXPdGYjmwGZnZlgbaDrpz+qddyYPfsNc1ZHBrovFA4J9vwzbzMpTR6hz4/5wQ7oW6lnZyQDM8Ng+gB/nYIc/8VApf5hYX/OzirDQ9Yuf54k8wUfZFWqF9lvnhO2DW+pKxGA== X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1983; 6:+ZudJ8EFpW8a+W/LTpR3UIm1f/sp/2trgUE4MiLuQf/UmAhNAEObgP46Y/TNuyevi4vpV3b+yhRWXHl43iEUpc/put2bGZ9+0CYSkJOhKh0BgMLdnWkjM+XlZZKPKrEoOQ1CNURg7s1sxzDbVFey8knk/OaUOX50mFhc4ANBb/yDdvHyFuEEkH6HKWeKO/lCP+jxgjma25xmaYBI5qkHF9oE+s0OZ51lNRsiqPYPysel/m4vc/aFIlTW1vEvoQVCwgkPi4PHp8HKteop9KzCtfVlP0uYnG6k7y9IW79A0cXUuz7L2SgTAFZSCr/RkYwP/y7enFnqwNMCzP8RHDEnfeNCchZZzlq38Mq9/tjPAPw=; 5:7XPozzvzHJ7x/Cm8XF0Nk7MzHkLBJhfH/3+cRLJvRQuFFy0u9e13ZdRaTc4pWSVrEldOxOKBsCNlnZ9WCba5i76a+UevsIfDbNjAMrwHLzn8oya4M9yVHQEX270PQgyKfRpRHui0Mq6vEdy2TVUv9Oh1AM+Tlv842fk9GjE4Uww=; 24:2g6KbZqRXq6q6J+G+KNpOuF7SLmgVASFJqA2aoFKiiQC9dYQS4DpXvGMpZ6m4pnR99PY2j6gJRHaUrFTgsqxfxb68rFdk0iR2ccNUYCSnos=; 7:+RU07o+DTAn9TYmBw5iovCeWgRg4Vxk6a74KuqfxX986JcenCtx8egqjck39Dp7urgoIwg6141fhCqJWKuarK10s8jFvkvPeSvr8W49K/Y9gE742YD0xqQqNiKAjGl6EDDRtd/NuRhH2AKx9rHEdDOrmEHv9WwWQuJPSk6AOf0oGx7dNJZpccahFRSlhszmbchbqcz+x0FMcIpqWr8fNj5fvy6WnRxR0Fst89x6u/wmSjJKJe7Qg1m1vwS+fAL9F SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1983; 20:v8s20bSCnKhpatXiGnLcE/cS8xuZl2fMtRfUZYgZDBhV/cRaohkt80kD1qskEn7Ura0E7JgWQfxIVtK5+VVjei0Le8BTooEAKHOKei7RS+irujKYf9HjxY+ybVo11clSyJCA0psdkp3SE5L3JGrSBVQjyiq9UD5UjwJio8zOtJg= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2018 20:31:51.3097 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 86057c6a-cbf6-4619-8cd4-08d56da0a815 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1983 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.2.132 Subject: [Qemu-devel] [RFC PATCH 26/34] hv-scsi: limit the number of requests per notification X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: <qemu-devel.nongnu.org> List-Unsubscribe: <https://lists.nongnu.org/mailman/options/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe> List-Archive: <http://lists.nongnu.org/archive/html/qemu-devel/> List-Post: <mailto:qemu-devel@nongnu.org> List-Help: <mailto:qemu-devel-request@nongnu.org?subject=help> List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=subscribe> Cc: Ben Warren <ben@skyportsystems.com>, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, Krish Sadhukhan <krish.sadhukhan@oracle.com>, "Marcos E. Matsunaga" <Marcos.Matsunaga@oracle.com>, Jan Dakinevich <jan.dakinevich@virtuozzo.com>, Vadim Rozenfeld <vrozenfe@redhat.com>, "Denis V. Lunev" <den@openvz.org>, si-wei liu <si-wei.liu@oracle.com>, Paolo Bonzini <pbonzini@redhat.com>, Vitaly Kuznetsov <vkuznets@redhat.com>, Cathy Avery <cavery@redhat.com> Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" <qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org> |
Series |
Hyper-V / VMBus
|
expand
|
diff --git a/hw/scsi/hv-scsi.c b/hw/scsi/hv-scsi.c index bbfc26bf0a..aa055340ef 100644 --- a/hw/scsi/hv-scsi.c +++ b/hw/scsi/hv-scsi.c @@ -294,8 +294,9 @@ static void hv_scsi_handle_packet(HvScsiReq *req) static void hv_scsi_notify_cb(VMBusChannel *chan) { HvScsi *scsi = HV_SCSI(vmbus_channel_device(chan)); + int i; - for (;;) { + for (i = 1024; i; i--) { HvScsiReq *req = vmbus_channel_recv(chan, sizeof(*req)); if (!req) { break; @@ -304,6 +305,10 @@ static void hv_scsi_notify_cb(VMBusChannel *chan) hv_scsi_init_req(scsi, req); hv_scsi_handle_packet(req); } + + if (!i) { + vmbus_notify_channel(chan); + } } static void hv_scsi_reset(HvScsi *scsi)
There's a vague feeling that, if there are too many requests in the incoming ring buffer, processing and replying to them may usurp the event loop (main thread) and thus induce lags, soft lockups, etc. So ensure to yield the event loop at most every 1024 requests. TODO: do something smarter than this Signed-off-by: Roman Kagan <rkagan@virtuozzo.com> --- hw/scsi/hv-scsi.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)