Received: by 2002:a25:f815:0:0:0:0:0 with SMTP id u21csp2247199ybd; Mon, 24 Jun 2019 03:15:05 -0700 (PDT) X-Google-Smtp-Source: APXvYqzv1VITTaobkmRec4fl8AOz0/UBKRM/2kyYPe9uoTucz3d+XT+FP/EAQGeWApMXnDkzC70X X-Received: by 2002:a17:90a:db42:: with SMTP id u2mr24055308pjx.48.1561371305574; Mon, 24 Jun 2019 03:15:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1561371305; cv=none; d=google.com; s=arc-20160816; b=Oo0tQyrhO0CDC19ojT2Df0b5zhKE8Dc/ERR5ktRz5C7R1qRxoobXZrwIwiEw6yS8zI fb1pQJs2e9veHEIlBVYiJxnNZFKXOklu6agSZnTjDsMFWQkqz5sRbXb91ls6VoIN67FE SduVBV3wZM4gXf7cehCqQ3YACAkL3CDAjBygwc3z/X6O/mylSZ+8PiPjXgEwrzk9oAN2 kjpUwz0drylArkVJLzqu+2aAvvP3NRKBUtqv6KPNBKsH/dlApbY7OwRdj2A83ZlEM06e h9Rt/pOlLCA+DQ310rgzjsYZm/e+1cpIk+q4KadJk5ugi1tYNnphD6HxalbCUKwtugA9 iiyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=2jFh5ITlSp3PtgXoiI42o9CyfgGPLaPYXzoaKzbfm8A=; b=eVybXb7HkR2Xug6h7xZA2z2fV19hmaDFLNvYALeVfML0aLpKvJApZGJ6hKn37IrKx+ DLu5ZALiv0GPeQIEljOzHrUsbA07oAcH9Pqxw1KJkMEO5sIm8OLOwhqa/RtZd1QyTlkl PPmdUjWPpiAPjKhpSMXFJR3aavQjE98S97SYGA1mxxDGfWX+5DcGnLG+Do4WuQTNTfUC 6gPgemZFNcFEgTe6LpUZZiIoJSBtnl4thSluSbo2OU8LvR/Ck9VOhUcWZ3kN9D3j4BKl 7NC+MKcJzTnVHRF+VbT9wZap8w7ZpT3Icqwngg91/ewNMgECz2qN/xdW/yIUbuQquhc8 i1FQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=hFyB9VJa; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 62si10507437pgc.47.2019.06.24.03.14.50; Mon, 24 Jun 2019 03:15:05 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=hFyB9VJa; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729670AbfFXKEV (ORCPT + 99 others); Mon, 24 Jun 2019 06:04:21 -0400 Received: from mail.kernel.org ([198.145.29.99]:35760 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729658AbfFXKES (ORCPT ); Mon, 24 Jun 2019 06:04:18 -0400 Received: from localhost (f4.8f.5177.ip4.static.sl-reverse.com [119.81.143.244]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 6817A20848; Mon, 24 Jun 2019 10:04:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1561370657; bh=pRnKOdPQl7hC2q6F+bPvTomDy/40Pc8baQlM3LhR8NE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hFyB9VJaAbNXYIf0X/BLHws8KkRiTxGoYGlW0L5Z+xEwR6nVnBZv5XSO5+MsXsxgt 9chZ9XHhKi+YGOiDXVdBZII6UP+Gp4/sSmf8vryOmAF1lHdm6iY5uaVYa7rQfeQO5z lnof1nR98GjFDopsdtGO3xuHIjp5dMsZUoaN9iWI= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, "Michael J. Ruhl" , Kamenee Arumugam , Dennis Dalessandro , Jason Gunthorpe , Sasha Levin Subject: [PATCH 4.19 42/90] IB/hfi1: Validate page aligned for a given virtual address Date: Mon, 24 Jun 2019 17:56:32 +0800 Message-Id: <20190624092317.051419705@linuxfoundation.org> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20190624092313.788773607@linuxfoundation.org> References: <20190624092313.788773607@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org [ Upstream commit 97736f36dbebf2cda2799db3b54717ba5b388255 ] User applications can register memory regions for TID buffers that are not aligned on page boundaries. Hfi1 is expected to pin those pages in memory and cache the pages with mmu_rb. The rb tree will fail to insert pages that are not aligned correctly. Validate whether a given virtual address is page aligned before pinning. Fixes: 7e7a436ecb6e ("staging/hfi1: Add TID entry program function body") Reviewed-by: Michael J. Ruhl Signed-off-by: Kamenee Arumugam Signed-off-by: Dennis Dalessandro Signed-off-by: Jason Gunthorpe Signed-off-by: Sasha Levin --- drivers/infiniband/hw/hfi1/user_exp_rcv.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/infiniband/hw/hfi1/user_exp_rcv.c b/drivers/infiniband/hw/hfi1/user_exp_rcv.c index dbe7d14a5c76..4e986ca4dd35 100644 --- a/drivers/infiniband/hw/hfi1/user_exp_rcv.c +++ b/drivers/infiniband/hw/hfi1/user_exp_rcv.c @@ -324,6 +324,9 @@ int hfi1_user_exp_rcv_setup(struct hfi1_filedata *fd, u32 *tidlist = NULL; struct tid_user_buf *tidbuf; + if (!PAGE_ALIGNED(tinfo->vaddr)) + return -EINVAL; + tidbuf = kzalloc(sizeof(*tidbuf), GFP_KERNEL); if (!tidbuf) return -ENOMEM; -- 2.20.1