Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1536241

Re: [PATCH] pci-hyperv: use kmalloc to allocate hypercall params buffer

Path csiph.com!news.mixmin.net!news.unit0.net!news.panservice.it!bofh.it!news.nic.it!robomod
From Stephen Hemminger <stephen@networkplumber.org>
Newsgroups linux.kernel
Subject Re: [PATCH] pci-hyperv: use kmalloc to allocate hypercall params buffer
Date Mon, 05 Dec 2016 18:00:02 +0100
Message-ID <sL4Mq-71m-29@gated-at.bofh.it> (permalink)
References <sBl29-5Nj-9@gated-at.bofh.it>
Dkim-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20150623.gappssmtp.com; s=20150623; h=date:from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=/9UGTMKd/StnebRwT0e2bHVCie3TSRkqdHlST5cebxM=; b=Lk1tuLfnrq4SCUFh2jg8xlEqD44xAiqdf6ZZkq03uRfVhgGXNtVPe8CNwOd3yytmJG 6+kgyU1wpcMyuAedLODMvczlSwd0moQF7pLWy+4+M2A6wPqfEsjBJU+qkTt3yI+nrtxe sMnALQgvPRrtLwzGwGw5/hohvIzCeLe2gW6/CKxUDY2hwBU+TMi1U/FFjGUz9iZrB/zZ iI94h2VXS/Ke4FVuOgC3MnoaGr0fI4Jo45CvKFdLAtLaUv8aNyUuVs+eXTZy1N3ya+vi L+wvazVQTjUGSWMWIttJlRjYP2Dly/GJhJUXWZxf2qbORLA7YRgFFJEVPGNqk8i26SEx /5lA==
X-Google-Dkim-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=/9UGTMKd/StnebRwT0e2bHVCie3TSRkqdHlST5cebxM=; b=EF3x6y0CQ3DCR+MQTT8FcrNT72ynfYxJhrEXzqDwyU26IOXOaGkJQvcbhC4jEW8EbF /dG1BvoS7hjJmQGizIw4Z6ToCIVeXop5tW45BIBL/gtBD2JzYVLvTaeP1112Fq8FVO8K MDFCu/NfE4Ge1hKcFoDFzaYa3WipBReaOCYaVeG1Lyk6IjjJcDalgKkK+Q5bQtSX61SG uqLeDcgk5QId8CSjz/TnM7SO3N6omL10scpZYzCx8Bwz/piOmjxAnN75BSW9yY+9Z4KJ To7Nl5VRICyp0o6GIHSONL+9mlz2HEzmZM5ap8ju0Lv79gc2Sf642ulGpdKZluB9u9cM iDag==
X-Gm-Message-State AKaTC00LN9DGW4HUQLrEGA3dW99GAYbGEUx811GbCNYOKIjLbZ5h+RVg77KQxSGnIT3rrQ==
X-Received by 10.99.101.65 with SMTP id z62mr105545602pgb.74.1480956762492; Mon, 05 Dec 2016 08:52:42 -0800 (PST)
MIME-Version 1.0
Content-Type text/plain; charset=US-ASCII
Content-Transfer-Encoding 7bit
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 30
Organization linux.* mail to news gateway
X-Original-Cc "K. Y. Srinivasan" <kys@microsoft.com>, Haiyang Zhang <haiyangz@microsoft.com>, Bjorn Helgaas <bhelgaas@google.com>, devel@linuxdriverproject.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org
X-Original-Date Mon, 5 Dec 2016 08:52:40 -0800
X-Original-Message-ID <20161205085240.23f686fc@xeon-e3>
X-Original-References <1478642678-31659-1-git-send-email-longli@exchange.microsoft.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1536241

Show key headers only | View raw


On Tue,  8 Nov 2016 14:04:38 -0800
Long Li <longli@exchange.microsoft.com> wrote:

> +	spin_lock_irqsave(&hbus->retarget_msi_interrupt_lock, flags);
> +
> +	params = &hbus->retarget_msi_interrupt_params;
> +	memset(params, 0, sizeof(*params));
> +	params->partition_id = HV_PARTITION_ID_SELF;
> +	params->source = 1; /* MSI(-X) */
> +	params->address = msi_desc->msg.address_lo;
> +	params->data = msi_desc->msg.data;
> +	params->device_id = (hbus->hdev->dev_instance.b[5] << 24) |
>  			   (hbus->hdev->dev_instance.b[4] << 16) |
>  			   (hbus->hdev->dev_instance.b[7] << 8) |
>  			   (hbus->hdev->dev_instance.b[6] & 0xf8) |
>  			   PCI_FUNC(pdev->devfn);
> -	params.vector = cfg->vector;
> +	params->vector = cfg->vector;
>  
>  	for_each_cpu_and(cpu, dest, cpu_online_mask)
> -		params.vp_mask |= (1ULL << vmbus_cpu_number_to_vp_number(cpu));
> +		params->vp_mask |= (1ULL << vmbus_cpu_number_to_vp_number(cpu));
> +
> +	hv_do_hypercall(HVCALL_RETARGET_INTERRUPT, params, NULL);
>  
> -	hv_do_hypercall(HVCALL_RETARGET_INTERRUPT, &params, NULL);
> +	spin_unlock_irqrestore(&hbus->retarget_msi_interrupt_lock, flags);

It looks like the additional locking here is being overly paranoid.
The caller is already holding the irq descriptor lock. Look at fixup_irqs.

Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread


Thread

Re: [PATCH] pci-hyperv: use kmalloc to allocate hypercall params  buffer Stephen Hemminger <stephen@networkplumber.org> - 2016-12-05 18:00 +0100
  RE: [PATCH] pci-hyperv: use kmalloc to allocate hypercall params  buffer Long Li <longli@microsoft.com> - 2016-12-06 04:10 +0100
    Re: [PATCH] pci-hyperv: use kmalloc to allocate hypercall params  buffer Stephen Hemminger <stephen@networkplumber.org> - 2016-12-06 17:30 +0100

csiph-web