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=-7.6 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=no 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 CC4B2C4708B for ; Thu, 27 May 2021 05:40:47 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A656E613B6 for ; Thu, 27 May 2021 05:40:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234212AbhE0FmS (ORCPT ); Thu, 27 May 2021 01:42:18 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:35795 "EHLO us-smtp-delivery-124.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233642AbhE0FmQ (ORCPT ); Thu, 27 May 2021 01:42:16 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1622094043; h=from:from: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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=AU/RuY2ymovNRYn9DIYtROZdNQLFTgpR1rexfb2OF3c=; b=N1/ocHRmo7AWpG6/7nLrdOYRAd5Uru10vZ6ei9T4zNgzfrbNjdD/3CTsBheXanRxPW2CSU Fsa2dqfqhI8XeCvsCa6NVLat7P/lAfXr+ce986tyzHq+dJ3cPuqjIGQUfzda39lsGfD5bz h788r12lhHM1nZAtw0hHM4mu8yjmvng= Received: from mail-pg1-f198.google.com (mail-pg1-f198.google.com [209.85.215.198]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-440-B2CqcDf9N8e2CyZKuhqJOg-1; Thu, 27 May 2021 01:40:42 -0400 X-MC-Unique: B2CqcDf9N8e2CyZKuhqJOg-1 Received: by mail-pg1-f198.google.com with SMTP id a10-20020a65418a0000b029021b78388f57so2266773pgq.15 for ; Wed, 26 May 2021 22:40:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=AU/RuY2ymovNRYn9DIYtROZdNQLFTgpR1rexfb2OF3c=; b=s5h6dJZOBX1LLjp2CYrrwCW6gRM39zmDp77N4uptpo03vjuiMLyyiI+UmveYO8Mb5H 1x8kTa51tTl4MQmisqcDARIsyI+a4fzGeSdpeCWgomEpQ9xGQ6N1voefip0MgKFFCURA 6nNX0yxvdxw5Jbl7rNU8U7wVJuKMuIPJ+m/C8+mo9BsYbcHaE545fC9d01sma6IqywRB nfLyrco0bO/huELsD8ywqRHtcRoHOJ9Ru7+3czuNfSiNH+jdwSUemVu1q9yJvSaUm6uE EUCSNjRFwjBD5+KKMr4atAedLz28Q6xJXxWFs7776DlhRUgluVU33lwbU69oqypWgsQ1 vE3w== X-Gm-Message-State: AOAM532ztKroAqkaOuvKlwjRCZB8CgFwDTDHlzEDJ5FDPQFlvxfQIadh Lv5aqAMOWJxXEIUVimuiF6pF60KJHxMQOT/Amv3Bw8LFyfmhRMYPBwFGovgkWAPZwMghTuzgnJG xCSKT6ey4pWzlvkpuBMFeBUDi3JUNctkbB2jZDH2m2aOZIy9bqtRo0o9sfGJgmYp51sOEVLTxCN d+ X-Received: by 2002:a17:90a:71c7:: with SMTP id m7mr7691872pjs.9.1622094041067; Wed, 26 May 2021 22:40:41 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwdvc47LfRqVL36pEPdXD9AUGFkROiA0ecx8aq5qhRtKjUnV9VTluCW50o4cKagpZC5qThkZA== X-Received: by 2002:a17:90a:71c7:: with SMTP id m7mr7691807pjs.9.1622094040375; Wed, 26 May 2021 22:40:40 -0700 (PDT) Received: from wangxiaodeMacBook-Air.local ([209.132.188.80]) by smtp.gmail.com with ESMTPSA id z19sm851114pjq.11.2021.05.26.22.40.33 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 26 May 2021 22:40:39 -0700 (PDT) Subject: Re: [PATCH v7 11/12] vduse: Introduce VDUSE - vDPA Device in Userspace To: Yongji Xie Cc: "Michael S. Tsirkin" , Stefan Hajnoczi , Stefano Garzarella , Parav Pandit , Christoph Hellwig , Christian Brauner , Randy Dunlap , Matthew Wilcox , Al Viro , Jens Axboe , bcrl@kvack.org, Jonathan Corbet , =?UTF-8?Q?Mika_Penttil=c3=a4?= , Dan Carpenter , joro@8bytes.org, virtualization , netdev@vger.kernel.org, kvm , linux-fsdevel@vger.kernel.org, iommu@lists.linux-foundation.org, linux-kernel References: <20210517095513.850-1-xieyongji@bytedance.com> <20210517095513.850-12-xieyongji@bytedance.com> <3740c7eb-e457-07f3-5048-917c8606275d@redhat.com> <5a68bb7c-fd05-ce02-cd61-8a601055c604@redhat.com> From: Jason Wang Message-ID: Date: Thu, 27 May 2021 13:40:31 +0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0) Gecko/20100101 Thunderbird/78.10.2 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 在 2021/5/27 下午1:08, Yongji Xie 写道: > On Thu, May 27, 2021 at 1:00 PM Jason Wang wrote: >> >> 在 2021/5/27 下午12:57, Yongji Xie 写道: >>> On Thu, May 27, 2021 at 12:13 PM Jason Wang wrote: >>>> 在 2021/5/17 下午5:55, Xie Yongji 写道: >>>>> + >>>>> +static int vduse_dev_msg_sync(struct vduse_dev *dev, >>>>> + struct vduse_dev_msg *msg) >>>>> +{ >>>>> + init_waitqueue_head(&msg->waitq); >>>>> + spin_lock(&dev->msg_lock); >>>>> + vduse_enqueue_msg(&dev->send_list, msg); >>>>> + wake_up(&dev->waitq); >>>>> + spin_unlock(&dev->msg_lock); >>>>> + wait_event_killable(msg->waitq, msg->completed); >>>> What happens if the userspace(malicous) doesn't give a response forever? >>>> >>>> It looks like a DOS. If yes, we need to consider a way to fix that. >>>> >>> How about using wait_event_killable_timeout() instead? >> >> Probably, and then we need choose a suitable timeout and more important, >> need to report the failure to virtio. >> > Makes sense to me. But it looks like some > vdpa_config_ops/virtio_config_ops such as set_status() didn't have a > return value. Now I add a WARN_ON() for the failure. Do you mean we > need to add some change for virtio core to handle the failure? Maybe, but I'm not sure how hard we can do that. We had NEEDS_RESET but it looks we don't implement it. Or a rough idea is that maybe need some relaxing to be coupled loosely with userspace. E.g the device (control path) is implemented in the kernel but the datapath is implemented in the userspace like TUN/TAP. Thanks > > Thanks, > Yongji >