From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-lj1-f175.google.com (mail-lj1-f175.google.com [209.85.208.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CB026271A94 for ; Sat, 24 Jan 2026 10:49:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.175 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769251746; cv=none; b=D5OHUOtRVrftdIXm+t2LTl55bUlGwF+mzVnnl+/wT003xTn+DI3Lk455Bhj/DT+m3v6OvyGgdBB2QoRtS2Q9N0mU/h+w+VjMq2Ng/uVmVAaeQwPY+2vq27QtS3Gkfovt3f7/tLYirnpjOeHyt20IQjsfqB77PfxyaBNzgi7BH08= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769251746; c=relaxed/simple; bh=5by/krL4LkgSMMT5g0Z2p396tLopyd3gucFBw6XyILI=; h=From:Date:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=PWw/XDVb1sk/YRjuLvZqgAZTa4b1/2iwyHDcUe1xvz+VYO3QQCtIDWCuVjKvCW36jVM/eRXLWsbLoNYMEqr4SxIzruTAnbsvqzxGcIgFeP1ZrpFuqo9j1cZd1ihjYF6OQ2rvLTBIsNozdC6m1RpyPGvkVqDgU/Lf8q/U9gAWs2E= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=FO9W6wBq; arc=none smtp.client-ip=209.85.208.175 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="FO9W6wBq" Received: by mail-lj1-f175.google.com with SMTP id 38308e7fff4ca-38320cd563aso33657691fa.0 for ; Sat, 24 Jan 2026 02:49:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1769251742; x=1769856542; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to; bh=PcVibjw4mjDgQQhM+5ORM6LTnO2Adlw+9ruZjnxFQfI=; b=FO9W6wBqZnSzLyHl8bLgqcXLeB2FBCw24iZhkVp5h+SIGMt89cbwlFtHNkhArvBFiF XK/fhtxdAdaO3glXzpLZvG3n++FXitqL6vu0xkEj2YjmiIV01pYVXDjvNuN644Rzr1o4 5E9LuVu+IOdip/IUdYD896GXIrqvZylYfLsehs6oibk0Z3CeadfJF17LrAMv8seFIVvT qBGFuw5oihSouhAzTCAa98kN9Ea6PCLdSr/hCo2jvZcIxs7dLgJZu/NtEpuhB7Li/Oq7 WMC46BcuKsZCeWvbu0DxqfVdWnCmZEi4KlRTtk8zVHbcRUmNSMTyA/jmgW3XjhxV2CVI sQ7w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1769251742; x=1769856542; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PcVibjw4mjDgQQhM+5ORM6LTnO2Adlw+9ruZjnxFQfI=; b=EJxqXeEznogj/TAk39+6MvPLCpMid2jGtmjQ77Cl9inhHb/hdKKomyHDHD5DdCeNCD adoRjv++7LusWZqNEs8FaVVSS2YcChKvWoemNdFJGmBs8CTz2bnqHyoasKEq+GnHCJR+ 9srtJn4F+a3CJFxvKqWkz1PrxhicNLDEHyrwVteQj1XmNecggBISaHv9EB6h97J5X9+u 7S2EiRqoa8kuUhnzwnZt49O5zmxzdmcXeI6WG3tMFuTOWhiN9IeZyPTOl4nzc6zOfIU+ EGoLiK8fexFIFDU2OkOEJqRHzuqMkOU/cg2j9a6Z5AhJhWVvqWT0xpWApBd2tknNma3b yZbg== X-Forwarded-Encrypted: i=1; AJvYcCWP/Wa6uszd9bOvw0eT7kuC4P7oCXKfK9CbnNB7hInDRknTJY3M5V7JAr5z+Yk3OMYtUxy6Wl4=@vger.kernel.org X-Gm-Message-State: AOJu0YweTrvcP0lC2SjT3vZrV+lrBAKEZ658W2amBg7Vyzh9LJtGnT53 MMU8zLMm71Q90jdGKkU+aukZ0wxay2INT9LMfyw+a+TJFuOnUJzFhAp4 X-Gm-Gg: AZuq6aInzaeNGt0BxEvsKWylHuo2bnFzbH0cYe9LJKzKKRzeQxB4CfJBmoxEUSm7pj+ iexgb3jSr06ztrob/WTbJ5oPp03+9uza99DS3k4ucaBw2/K58c8eoYT5p7VwdKO8WDgERIxXDl1 Py5D4zkST4fZVzRXKi1zhuL9cKtQA/Z9+jup9vf1cHM2/iaEU/I1ZUSyvrgBDmnu1nqmUxRkO5h 2CIaSvQcQVfrUwB6f6G0mXBIHcHfMozg8N+R+esNx65g4DdTfs2Y9tBlLQ7KxNC5yxufuOl9hRP yVwhAq7TAIqByIHQSfPSU/6GkP+Kte/PwnQFArk+5yCsXhERgg9sE350ilrVy4xkXB44zN9P7SW uMbLy2TuJAumyLJsGCF4JV/14uvgMm3sVxZtdjYc5hQhAHS4ggMA= X-Received: by 2002:a05:651c:1a0c:b0:385:c21f:37e3 with SMTP id 38308e7fff4ca-385e1b715dcmr15798421fa.19.1769251741385; Sat, 24 Jan 2026 02:49:01 -0800 (PST) Received: from pc636 ([2001:9b1:d5a0:a500::800]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-385da1ab6acsm11193501fa.40.2026.01.24.02.49.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 24 Jan 2026 02:49:00 -0800 (PST) From: Uladzislau Rezki X-Google-Original-From: Uladzislau Rezki Date: Sat, 24 Jan 2026 11:48:59 +0100 To: "D. Wythe" Cc: Uladzislau Rezki , "David S. Miller" , Andrew Morton , Dust Li , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Sidraya Jayagond , Wenjia Zhang , Mahanta Jambigi , Simon Horman , Tony Lu , Wen Gu , linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-rdma@vger.kernel.org, linux-s390@vger.kernel.org, netdev@vger.kernel.org, oliver.yang@linux.alibaba.com Subject: Re: [PATCH net-next 2/3] mm: vmalloc: export find_vm_area() Message-ID: References: <20260123082349.42663-1-alibuda@linux.alibaba.com> <20260123082349.42663-3-alibuda@linux.alibaba.com> <20260124093505.GA98529@j66a10360.sqa.eu95> Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260124093505.GA98529@j66a10360.sqa.eu95> Hello, D. Wythe! > On Fri, Jan 23, 2026 at 07:55:17PM +0100, Uladzislau Rezki wrote: > > On Fri, Jan 23, 2026 at 04:23:48PM +0800, D. Wythe wrote: > > > find_vm_area() provides a way to find the vm_struct associated with a > > > virtual address. Export this symbol to modules so that modularized > > > subsystems can perform lookups on vmalloc addresses. > > > > > > Signed-off-by: D. Wythe > > > --- > > > mm/vmalloc.c | 1 + > > > 1 file changed, 1 insertion(+) > > > > > > diff --git a/mm/vmalloc.c b/mm/vmalloc.c > > > index ecbac900c35f..3eb9fe761c34 100644 > > > --- a/mm/vmalloc.c > > > +++ b/mm/vmalloc.c > > > @@ -3292,6 +3292,7 @@ struct vm_struct *find_vm_area(const void *addr) > > > > > > return va->vm; > > > } > > > +EXPORT_SYMBOL_GPL(find_vm_area); > > > > > This is internal. We can not just export it. > > > > -- > > Uladzislau Rezki > > Hi Uladzislau, > > Thank you for the feedback. I agree that we should avoid exposing > internal implementation details like struct vm_struct to external > subsystems. > > Following Christoph's suggestion, I'm planning to encapsulate the page > order lookup into a minimal helper instead: > > unsigned int vmalloc_page_order(const void *addr){ > struct vm_struct *vm; > vm = find_vm_area(addr); > return vm ? vm->page_order : 0; > } > EXPORT_SYMBOL_GPL(vmalloc_page_order); > > Does this approach look reasonable to you? It would keep the vm_struct > layout private while satisfying the optimization needs of SMC. > Could you please clarify why you need info about page_order? I have not looked at your second patch. Thanks! -- Uladzislau Rezki