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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id DD5DEC48BF6 for ; Tue, 5 Mar 2024 00:39:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D1EF46B0075; Mon, 4 Mar 2024 19:39:00 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id CD0106B007B; Mon, 4 Mar 2024 19:39:00 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B972F6B007D; Mon, 4 Mar 2024 19:39:00 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id A70E66B0075 for ; Mon, 4 Mar 2024 19:39:00 -0500 (EST) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 40F301A0D65 for ; Tue, 5 Mar 2024 00:39:00 +0000 (UTC) X-FDA: 81861125640.13.3045CD0 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) by imf12.hostedemail.com (Postfix) with ESMTP id 7AD5240005 for ; Tue, 5 Mar 2024 00:38:58 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=KgyPtYDH; spf=pass (imf12.hostedemail.com: domain of alexei.starovoitov@gmail.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=alexei.starovoitov@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1709599138; h=from:from:sender: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:dkim-signature; bh=Bj5zoTI69PLp3cR+V6/5ODnZceaydtC6xTdxHYis12E=; b=78K58k03FAhApVF3wzl5QeVUgLadQea80jnw2o03OMWED3buexXnmcaZg+pmGSXlfH4fZa G0bbkx9X/nNBLCBddp9zrLp8tPhg30Kc1J86uLvYEPUNIgeedIoJ6WTo2xWswYEbO6RBz5 PpsMRqSc3mdFI3eQgjVZjAHO1CQ/Cls= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1709599138; a=rsa-sha256; cv=none; b=8ekL4kZP9ks8monshReYHNFu/7iv1J6ES/sJn0bwo70Y13uMHrJs9oYXxyRTlnFbqrNM7j 6To6F6H2/8pis5J52uRaF1ZPjMYHIxmbSDwYG/96J5krRd/l9yDXoO7SrLOtWdwfza2gB8 isFWufpg3Lp0QDyMlYZI/LAw0uj63K8= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=KgyPtYDH; spf=pass (imf12.hostedemail.com: domain of alexei.starovoitov@gmail.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=alexei.starovoitov@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-412e4426e32so10656985e9.2 for ; Mon, 04 Mar 2024 16:38:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1709599137; x=1710203937; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=Bj5zoTI69PLp3cR+V6/5ODnZceaydtC6xTdxHYis12E=; b=KgyPtYDHKUx4l4GpKBkx9LHybleVW6adaYnPNL2gWdu+F1+Th0XkiHMjmxoaIqejz9 6HpwOYqU0BOCfpDkxirFZ9pKP23lfvPAT/tSLD+dz/IeDvCk9v/Rb2ZQXdK1UoJy09GC Y7KpRrlEE5YkVZsCj/baNRnDkblVaGfik0l0QlJD2XHuatX6tkmNaXMgOi/fshxdiiBL Ny6FZodw2qoAzJ0wJg/8dGzmGqvhzYiezQUJZK09EEaFaSnVh31R+1u/30HDaTwc7pb1 H0Gpoik5yrimiXRN7E6H1P6byT/OeBJK6uN+b86VCGSzQOZI4saKbN25tmtTGyA84bAb 6cCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1709599137; x=1710203937; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Bj5zoTI69PLp3cR+V6/5ODnZceaydtC6xTdxHYis12E=; b=Boo+d3DL6BaeOZntIbiEz6bFi7M0k3V/ZsNUkieT/tZ+q7EAWJMI3yP5pd9mkzyDpD ICdeOcX66sbutBrL4JRJnf0+yikFQ9jhXyYB2y+A9pvETQYIb1CVWGac3RBAb+PU+6C6 x2iRA9RaFqH+TfqFg7TomRfiOiRqL5rD0EzRfkvKi4iRoz2b10P5ii3nFbpL/ITHt30w 2Ia9LYGILi4uE4pmmQC5zxMR7q7WGWg9hIHQuuF7i5bOfj9h71ghaS6nkfFdXxucrwiu p+ua2G1qO14+1kbzGCGxwvbbv6dB7aKS0TSPjFZmspQwQnyvFgEDF3yBrvmvy6yIRl1J MWEg== X-Forwarded-Encrypted: i=1; AJvYcCXZf2T2Y+TKxSQ6hGWOii8RI1ZAhqNUX/6YkVZXLl0C0Onij77bz5tIm3kGGo6RvycYDjsgFE7111e/X472KjMStY8= X-Gm-Message-State: AOJu0Yx7PR7QC313vsD3d7EL3z0Myt0IDqpZ5frPMaS23qJM86Tg2LKf jopF5XL7K59AR21ZmR4sSE4+GijjxFtlY2Qx1rrTnXuDIH3drz9Xh1EE+Q07elcqWBcIYZQKqTn EEYUFf+Hh4lHI6gfVKkFCRu4g7ys= X-Google-Smtp-Source: AGHT+IHPuUlqp1ldZ1+USNRqTG8hjmjknNCOaSaQz6ztGJruA1SPY5lwFtYqj/d3Q7KwH/p72Add+tEiks5hC80Uxqg= X-Received: by 2002:a05:600c:444e:b0:412:ecc4:3c3a with SMTP id v14-20020a05600c444e00b00412ecc43c3amr154280wmn.40.1709599136434; Mon, 04 Mar 2024 16:38:56 -0800 (PST) MIME-Version: 1.0 References: <20240223235728.13981-1-alexei.starovoitov@gmail.com> <20240223235728.13981-3-alexei.starovoitov@gmail.com> In-Reply-To: From: Alexei Starovoitov Date: Mon, 4 Mar 2024 16:38:45 -0800 Message-ID: Subject: Re: [PATCH v2 bpf-next 2/3] mm, xen: Separate xen use cases from ioremap. To: Mike Rapoport Cc: bpf , Daniel Borkmann , Andrii Nakryiko , Linus Torvalds , Barret Rhoden , Johannes Weiner , Lorenzo Stoakes , Andrew Morton , Uladzislau Rezki , Christoph Hellwig , Boris Ostrovsky , sstabellini@kernel.org, Juergen Gross , linux-mm , xen-devel@lists.xenproject.org, Kernel Team Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 7AD5240005 X-Rspam-User: X-Stat-Signature: mm5g5rhu16t85me8uy6yxos7pn947qjc X-Rspamd-Server: rspam03 X-HE-Tag: 1709599138-958608 X-HE-Meta: U2FsdGVkX19t4DIIV0gjYr4pQ7YeQSFkJurYNwAY+zk2naHEeX1TfMbPbxEGsbOP/1RsGOkMNmy4P68i+B1aukJG3Ff4Ijb8ddwSNq3rzj11J4kLXesYuSCeuSvvGAa7aUSIytIjzUW6Q4ARuY3AdBRVnVQ0/gatPa7Prv1fmcDHL7D63xRwO9cSPLPUDUVn3HnLdy47j7pIqCuPbVk2QhdVRbxoV9bAxmOa8Vu8pEkVpZsZw8a//xS7eKUDrh0rZ8CjrcmiVqjijCRZgo5KnxPaT65DBkKopBI6Eak2bqKYXBQYvQCG7yuLWBiAVI9cWBwGO5sMVbRbIYhJliWKzmW0RBydCx/mEYIC4EnBOyg4DsXzOLK7VDQjPUpKcfP0gvmlj21mj7V2VX1cmBz3utESo8BrYKVqzfNFsb87X1CGx/JBkTIAl2UoDJWhsr+GY5JzikaqMAZmvGzBGB97fAbrYRdd/d8U0qM0xjIGdwB8WGStvATveYeArA1fDgxO2sGf48y6g9a5NlEFF7d1sDrd+gvr0tNv9dKT/KN3suqFY4N81pvdl9q9JXBvOMKutTwk1CzpvEReatEhkAEk1BdnEaBe3SwdwBzMr17/5gQwEY1k3bssieIvvAbZD1uZd2WcbsW+Zdm/rxNTx5BJnkNTAQkqVXT92ZmMUHX6ve9rmSlE9KRW0oLGvXD1I6YPPoH4gJTPZ0vPgnQkVUltB+LyiHtzM3dPhnz5pda+3SVEKCkLdTPNjC8HAXC+nuUS7Akx2coSj0yHJswLHedoEHTc5zR9AzfQYKAfvLQB1qG0s9DzkJ7RzJ/M0dgm8lA5TMg+MiLtYCCYMgtPQKBiKzGut8AnY5VcEhKxRTRq9xmR5bds3ZV6tKVHpFy91suHfCJeHh2f/2FsUiyPDCHWyAoTxJ5vFvA8FY0bCo0iIlyS1zLhH/b9QSJYiUqQhUr/GtVsLUDKgDKIUZtI6L9 Jl23fmUs 5LNxt5qn/jQoqcaq0nYDaxuOCDzeyyF+5IcKrannRk7QHDgKzdaCeWj0hxEAsDoN+1YO2 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Sun, Mar 3, 2024 at 11:55=E2=80=AFPM Mike Rapoport wro= te: > > On Fri, Feb 23, 2024 at 03:57:27PM -0800, Alexei Starovoitov wrote: > > From: Alexei Starovoitov > > > > xen grant table and xenbus ring are not ioremap the way arch specific c= ode is using it, > > so let's add VM_XEN flag to separate them from VM_IOREMAP users. > > xen will not and should not be calling ioremap_page_range() on that ran= ge. > > /proc/vmallocinfo will print such region as "xen" instead of "ioremap" = as well. > > > > Signed-off-by: Alexei Starovoitov > > --- > > arch/x86/xen/grant-table.c | 2 +- > > drivers/xen/xenbus/xenbus_client.c | 2 +- > > include/linux/vmalloc.h | 1 + > > mm/vmalloc.c | 7 +++++-- > > 4 files changed, 8 insertions(+), 4 deletions(-) > > > > diff --git a/arch/x86/xen/grant-table.c b/arch/x86/xen/grant-table.c > > index 1e681bf62561..b816db0349c4 100644 > > --- a/arch/x86/xen/grant-table.c > > +++ b/arch/x86/xen/grant-table.c > > @@ -104,7 +104,7 @@ static int arch_gnttab_valloc(struct gnttab_vm_area= *area, unsigned nr_frames) > > area->ptes =3D kmalloc_array(nr_frames, sizeof(*area->ptes), GFP_= KERNEL); > > if (area->ptes =3D=3D NULL) > > return -ENOMEM; > > - area->area =3D get_vm_area(PAGE_SIZE * nr_frames, VM_IOREMAP); > > + area->area =3D get_vm_area(PAGE_SIZE * nr_frames, VM_XEN); > > if (!area->area) > > goto out_free_ptes; > > if (apply_to_page_range(&init_mm, (unsigned long)area->area->addr= , > > diff --git a/drivers/xen/xenbus/xenbus_client.c b/drivers/xen/xenbus/xe= nbus_client.c > > index 32835b4b9bc5..b9c81a2d578b 100644 > > --- a/drivers/xen/xenbus/xenbus_client.c > > +++ b/drivers/xen/xenbus/xenbus_client.c > > @@ -758,7 +758,7 @@ static int xenbus_map_ring_pv(struct xenbus_device = *dev, > > bool leaked =3D false; > > int err =3D -ENOMEM; > > > > - area =3D get_vm_area(XEN_PAGE_SIZE * nr_grefs, VM_IOREMAP); > > + area =3D get_vm_area(XEN_PAGE_SIZE * nr_grefs, VM_XEN); > > if (!area) > > return -ENOMEM; > > if (apply_to_page_range(&init_mm, (unsigned long)area->addr, > > diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h > > index c720be70c8dd..223e51c243bc 100644 > > --- a/include/linux/vmalloc.h > > +++ b/include/linux/vmalloc.h > > @@ -28,6 +28,7 @@ struct iov_iter; /* in uio.h */ > > #define VM_FLUSH_RESET_PERMS 0x00000100 /* reset direct map and f= lush TLB on unmap, can't be freed in atomic context */ > > #define VM_MAP_PUT_PAGES 0x00000200 /* put pages and free arr= ay in vfree */ > > #define VM_ALLOW_HUGE_VMAP 0x00000400 /* Allow for huge pages o= n archs with HAVE_ARCH_HUGE_VMALLOC */ > > +#define VM_XEN 0x00000800 /* xen use cases = */ > > > > #if (defined(CONFIG_KASAN_GENERIC) || defined(CONFIG_KASAN_SW_TAGS)) &= & \ > > !defined(CONFIG_KASAN_VMALLOC) > > There's also VM_DEFER_KMEMLEAK a line below: Ohh. Good catch. Will fix. > I think it makes sense to use an enumeration for vm_flags, just like as > Suren did for GFP > (https://lore.kernel.org/linux-mm/20240224015800.2569851-1-surenb@google.= com/) Hmm. I'm pretty sure Christoph hates BIT macro obfuscation. I'm not a fan of it either, though we use it in bpf in a few places. If mm folks prefer that style they can do such conversion later.