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=-2.6 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FORGED_YAHOO_RCVD,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED 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 2030CC54FCB for ; Wed, 22 Apr 2020 21:54:39 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id A1E3E2071C for ; Wed, 22 Apr 2020 21:54:38 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=yahoo.com header.i=@yahoo.com header.b="kiUaUfJm" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A1E3E2071C Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=yahoo.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 2578F8E0007; Wed, 22 Apr 2020 17:54:38 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 208828E0003; Wed, 22 Apr 2020 17:54:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0D0A58E0007; Wed, 22 Apr 2020 17:54:38 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0190.hostedemail.com [216.40.44.190]) by kanga.kvack.org (Postfix) with ESMTP id E5C058E0003 for ; Wed, 22 Apr 2020 17:54:37 -0400 (EDT) Received: from smtpin01.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id 8E873180AD830 for ; Wed, 22 Apr 2020 21:54:37 +0000 (UTC) X-FDA: 76736845794.01.class24_455a821cfad50 X-HE-Tag: class24_455a821cfad50 X-Filterd-Recvd-Size: 27250 Received: from sonic310-24.consmr.mail.ne1.yahoo.com (sonic310-24.consmr.mail.ne1.yahoo.com [66.163.186.205]) by imf17.hostedemail.com (Postfix) with ESMTP for ; Wed, 22 Apr 2020 21:54:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1587592475; bh=3YDBSlB6FP3Abqoz+oWHBYKbcjBJJjqx2MVLBaUF0sQ=; h=Date:From:To:Cc:In-Reply-To:References:Subject:From:Subject; b=kiUaUfJmQvyenBSYsVFR0HvJmt4dWV3A0DEnkPacjUg6A1Z8ZHHSHEbw9zWuq6F+4shdinCy6VBBh3H4c/BZ+f9wopJt0dldPVXY4b6ar8ti3jClHo8GT/wcLvYqLn2WSR0jJ+oKCNYccIRN2Ht0QaYrLtL4eLKyGp7BvpR5Ob4i13qRE4bfoPcK3AdmyYoH60lFL5N8iL2y3hLh6WerpV0IfOtqj9kz1Z2aCSlbiVse9Aj81gUpSJ4t9TE1YUa2OyX95Raq4nBWuL2FCZk+e890gUx5A6SvIHuO1uv22b7svNmwp3Smy7ll3R47XgftK08UusKS47XttQk6e9b8rQ== X-YMail-OSG: AoOihwoVM1mdVsfq.eDB58Tgh60FA4PRgP8886FDWyYoI6Z1Rg7.BLYM_m8Qq.z SUyvRbcD7DXvIlGygaQw2JDcjAjPZY5aDD0WzFbFckGubK4vn8YkTBZL.JeS7zA26wfLm450om9X buLnFuqCL8qMBDGJDmIYqLNOtRz4pVnuxiWox2yA59Ej65msDbmYS8fG4Ielu9O59LcLsDx8xf0I d9tEjkLXGcKEvIzLXC9wrjT68nWQI8JdhAF1ar0SabIY2o8OXYYcszybtrOuOhzaB0XARcKZiIx4 Wii6sI9uOGzO0D55Z2EQ5kmC_sQygKzMKdvZKH16Dz1BY0wkPmrLTX4Fn3Y.lUlOF1RWHasb.rXM doQF0R5M5KeZWqq94iNYg7cnCM9FgqEvzRYpul7jwnztareJKrSYC7PUcJhmWTY4.P.kzT_y9n1_ r8qsQmhEfy5ybtKNGBeTjUVACMrOFZuS8DXr8lTneDTFs26DZBY9yU0Ewo.XFmeXKXVZ.m0vYnGX oRe6bzjVjKZWGX.qeinYRg8jfgiHJc.IdWp22oV1qLtX1RkfMn87nd3S.1wA7t4ULT8XkBdGT.Ux PcXToUHAWqt4GcxYP4mmmx4JluAd4J3Yn3EAUqbEjvWiHU_gZk3h5KJP4itQ6VzGsgNhds4IQrV2 vMxRYx3sQUw3ptzchq7imdA_qUOOvhyPHAzm46kAIcWcv9wI0kBYkFI9GBlVURawsaxvg8SCVfsv C.mVQ3y.EUB9eFEfrcI_C8fif6gyCTsRl0QsCkSj4nNtX3cTyGoBSWgUIGj3u5RqeKX.PFpVWQ7X fGl6nNf4cHWyzOjaDZKP6czboW9b_JawMRL0x8UaEJWuCbJfEyJ2IxbFymhSImpwXPTGbL_1HcKy 28ebBcXQipX_YT3wXo.4KBz_0wdQ766BGA8SCmCEbTR_mFPnSRyshn6BovWVnI415o3hy2JrKV3K pyaHvuONW0Xby2dA4Qlq9Aj39WL0cqXVnN7vuNalNigTgvkBzOqydAx_8JCPtdseT1uIu.u_VfcT 1Dma3TvBB_YVMkWWPp5A4oEZLPB06CvqY_bIt66_G6f1dORT.GnVtKnJJAjA3uIdNuD8vR100aTT 1CDjMMBD3HkNnZg5CSkWUCtP4m7eA6KOlBxe38MzWEwKwHr2.5smoRovyW7TcJc.YZLjutBUNlJp PxUQVTyCRcoQkhViCp9eJi9h3o4ApUaGfVlNPj_lNXXI_wjGxlALeBPorf6BkO0_ydvUtnVeW1Xf Km.rLB9OnN3rBXqikTKNON7rfuGzsFUqeywLR.E7oBybmrJ5fxfIwTTGES5NsJTuvw7xYaD2tY84 sIZ7DwSc- Received: from sonic.gate.mail.ne1.yahoo.com by sonic310.consmr.mail.ne1.yahoo.com with HTTP; Wed, 22 Apr 2020 21:54:35 +0000 Date: Wed, 22 Apr 2020 21:54:35 +0000 (UTC) From: Casey Cairn To: Mike Kravetz , , "jsasphalt12@yahoo.com" Cc: linux-doc@vger.kernel.org, Benjamin Herrenschmidt , Dave Hansen , Heiko Carstens , Peter Xu , Linux-MM , Paul Mackerras , sparclinux@vger.kernel.org, linux-riscv@lists.infradead.org, Will Deacon , Mina Almasry , linux-s390@vger.kernel.org, Jonathan Corbet , Christian Borntraeger , Ingo Molnar , Catalin Marinas , Longpeng , Albert Ou , Vasily Gorbik , Qian Cai , Paul Walmsley , Thomas Gleixner , Linux ARM , Christophe Leroy , Nitesh Narayan Lal , Randy Dunlap , LKML , Palmer Dabbelt , Andrew Morton , linuxppc-dev , "David S.Miller" Message-ID: <199094272.3894.1587592475042@mail.yahoo.com> In-Reply-To: References: <20200417185049.275845-1-mike.kravetz@oracle.com> <5E312000-05D8-4C5D-A7C0-DDDE1842CB0E@lca.pw> <4c36c6ce-3774-78fa-abc4-b7346bf24348@oracle.com> <86333853-0648-393f-db96-d581ee114d2b@oracle.com> Subject: Re: [PATCH v3 0/4] Clean up hugetlb boot command line processing MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_3893_617641698.1587592475034" X-Mailer: WebService/1.1.15756 YMailNorrin Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 Edge/18.18363 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: ------=_Part_3893_617641698.1587592475034 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable =20 On Wednesday, April 22, 2020, 05:52:05 PM EDT, Anders Roxell wrote: =20 =20 On Mon, 20 Apr 2020 at 23:43, Mike Kravetz wrote= : > > On 4/20/20 1:29 PM, Anders Roxell wrote: > > On Mon, 20 Apr 2020 at 20:23, Mike Kravetz wr= ote: > >> On 4/20/20 8:34 AM, Qian Cai wrote: > >>> > >>> Reverted this series fixed many undefined behaviors on arm64 with the= config, > >> While rearranging the code (patch 3 in series), I made the incorrect > >> assumption that CONT_XXX_SIZE =3D=3D (1UL << CONT_XXX_SHIFT).=C2=A0 Ho= wever, > >> this is not the case.=C2=A0 Does the following patch fix these issues? > >> > >> From b75cb4a0852e208bee8c4eb347dc076fcaa88859 Mon Sep 17 00:00:00 2001 > >> From: Mike Kravetz > >> Date: Mon, 20 Apr 2020 10:41:18 -0700 > >> Subject: [PATCH] arm64/hugetlb: fix hugetlb initialization > >> > >> When calling hugetlb_add_hstate() to initialize a new hugetlb size, > >> be sure to use correct huge pages size order. > >> > >> Signed-off-by: Mike Kravetz > >> --- > >>=C2=A0 arch/arm64/mm/hugetlbpage.c | 8 ++++---- > >>=C2=A0 1 file changed, 4 insertions(+), 4 deletions(-) > >> > >> diff --git a/arch/arm64/mm/hugetlbpage.c b/arch/arm64/mm/hugetlbpage.c > >> index 9ca840527296..a02411a1f19a 100644 > >> --- a/arch/arm64/mm/hugetlbpage.c > >> +++ b/arch/arm64/mm/hugetlbpage.c > >> @@ -453,11 +453,11 @@ void huge_ptep_clear_flush(struct vm_area_struct= *vma, > >>=C2=A0 static int __init hugetlbpage_init(void) > >>=C2=A0 { > >>=C2=A0 #ifdef CONFIG_ARM64_4K_PAGES > >> -=C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate(PUD_SHIFT - PAGE_SHIFT); > >> +=C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate(ilog2(PUD_SIZE) - PAGE_SHIFT)= ; > >>=C2=A0 #endif > >> -=C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate(CONT_PMD_SHIFT - PAGE_SHIFT); > >> -=C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate(PMD_SHIFT - PAGE_SHIFT); > >> -=C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate(CONT_PTE_SHIFT - PAGE_SHIFT); > >> +=C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate(ilog2(CONT_PMD_SIZE) - PAGE_S= HIFT); > >> +=C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate(ilog2(PMD_SIZE) - PAGE_SHIFT)= ; > >> +=C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate(ilog2(CONT_PTE_SIZE) - PAGE_S= HIFT); > >> > >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 return 0; > >>=C2=A0 } > > > > I build this for an arm64 kernel and ran it in qemu and it worked. > > Thanks for testing Anders! > > Will, here is an updated version of the patch based on your suggestion. > I added the () for emphasis but that may just be noise for some.=C2=A0 Al= so, > the naming differences and values for CONT_PTE may make some people > look twice.=C2=A0 Not sure if being consistent here helps? > > I have only built this.=C2=A0 No testing. > > From daf833ab6b806ecc0816d84d45dcbacc052a7eec Mon Sep 17 00:00:00 2001 > From: Mike Kravetz > Date: Mon, 20 Apr 2020 13:56:15 -0700 > Subject: [PATCH] arm64/hugetlb: fix hugetlb initialization > > When calling hugetlb_add_hstate() to initialize a new hugetlb size, > be sure to use correct huge pages size order. > > Signed-off-by: Mike Kravetz Tested-by: Anders Roxell I tested this patch on qemu-aarch64. Cheers, Anders > --- >=C2=A0 arch/arm64/mm/hugetlbpage.c | 4 ++-- >=C2=A0 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/arm64/mm/hugetlbpage.c b/arch/arm64/mm/hugetlbpage.c > index 9ca840527296..bed6dc7c4276 100644 > --- a/arch/arm64/mm/hugetlbpage.c > +++ b/arch/arm64/mm/hugetlbpage.c > @@ -455,9 +455,9 @@ static int __init hugetlbpage_init(void) >=C2=A0 #ifdef CONFIG_ARM64_4K_PAGES >=C2=A0 =C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate(PUD_SHIFT - PAGE_SHIFT); >=C2=A0 #endif > -=C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate(CONT_PMD_SHIFT - PAGE_SHIFT); > +=C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate((CONT_PMD_SHIFT + PMD_SHIFT) - P= AGE_SHIFT); >=C2=A0 =C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate(PMD_SHIFT - PAGE_SHIFT); > -=C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate(CONT_PTE_SHIFT - PAGE_SHIFT); > +=C2=A0 =C2=A0 =C2=A0 hugetlb_add_hstate((CONT_PTE_SHIFT + PAGE_SHIFT) - = PAGE_SHIFT); > >=C2=A0 =C2=A0 =C2=A0 =C2=A0 return 0; >=C2=A0 } > -- > 2.25.2 > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel --=20 derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp derp=20 derp derp derp derp derp derp derp ---=20 You received this message because you are subscribed to the Google Groups "= derpyderpderp" group. To unsubscribe from this group and stop receiving emails from it, send an e= mail to derpyderpderp+unsubscribe@googlegroups.com. =20 ------=_Part_3893_617641698.1587592475034 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable


=20
=20
On Wednesday, April 22, 2020, 05:52:05 PM EDT, Anders R= oxell <anders.roxell@linaro.org> wrote:


On Mon, 20 Apr 2020 at 23:43, Mike Kr= avetz <mike.kravetz@oracle.com> wrote:
>
> On 4/20/20 1:29 PM, Anders R= oxell wrote:
> > On Mon, 20 Apr 2020 at 20:= 23, Mike Kravetz <mike.kravetz@oracle.com> wrote:
<= /div>
> >> On 4/20/20 8:34 AM, Qian Cai wrote:
=
> >>>
> >= ;>> Reverted this series fixed many undefined behaviors on arm64 with= the config,
> >> While rearranging the = code (patch 3 in series), I made the incorrect
&g= t; >> assumption that CONT_XXX_SIZE =3D=3D (1UL << CONT_XXX_SHI= FT).  However,
> >> this is not the= case.  Does the following patch fix these issues?
> >>
> >> From b75cb4a= 0852e208bee8c4eb347dc076fcaa88859 Mon Sep 17 00:00:00 2001
> >> From: Mike Kravetz <mike.kravetz@orac= le.com>
> >> Date: Mon, 20 Apr 20= 20 10:41:18 -0700
> >> Subject: [PATCH] = arm64/hugetlb: fix hugetlb initialization
> &g= t;>
> >> When calling hugetlb_add_hst= ate() to initialize a new hugetlb size,
> >= > be sure to use correct huge pages size order.
> >>
> >> Signed-off-by: Mike= Kravetz <mike.kravetz@oracle.com>
> >> ---
> >>  ar= ch/arm64/mm/hugetlbpage.c | 8 ++++----
> >&= gt;  1 file changed, 4 insertions(+), 4 deletions(-)
> >>
> >> diff --git a= /arch/arm64/mm/hugetlbpage.c b/arch/arm64/mm/hugetlbpage.c
> >> index 9ca840527296..a02411a1f19a 100644
> >> --- a/arch/arm64/mm/hugetlbpage.c
> >> +++ b/arch/arm64/mm/hugetlbpage.c
> >> @@ -453,11 +453,11 @@ void huge_ptep_clear_flush= (struct vm_area_struct *vma,
> >>  = static int __init hugetlbpage_init(void)
> >= ;>  {
> >>  #ifdef CONFIG_A= RM64_4K_PAGES
> >> -     = hugetlb_add_hstate(PUD_SHIFT - PAGE_SHIFT);
>= ; >> +      hugetlb_add_hstate(ilog2(PUD_SIZE) - PAGE= _SHIFT);
> >>  #endif
> >> -      hugetlb_add_hstate(CONT_P= MD_SHIFT - PAGE_SHIFT);
> >> -  &nb= sp;   hugetlb_add_hstate(PMD_SHIFT - PAGE_SHIFT);
> >> -      hugetlb_add_hstate(CONT_PTE_S= HIFT - PAGE_SHIFT);
> >> +    =   hugetlb_add_hstate(ilog2(CONT_PMD_SIZE) - PAGE_SHIFT);
> >> +      hugetlb_add_hstate(ilog2= (PMD_SIZE) - PAGE_SHIFT);
> >> +  &= nbsp;   hugetlb_add_hstate(ilog2(CONT_PTE_SIZE) - PAGE_SHIFT);
> >>
> >>&n= bsp;       return 0;
> >>= ;  }
> >
>= ; > I build this for an arm64 kernel and ran it in qemu and it worked.
>
> Thanks for tes= ting Anders!
>
> = Will, here is an updated version of the patch based on your suggestion.
=
> I added the () for emphasis but that may just b= e noise for some.  Also,
> the naming dif= ferences and values for CONT_PTE may make some people
> look twice.  Not sure if being consistent here helps?
>
> I have only built t= his.  No testing.
>
> From daf833ab6b806ecc0816d84d45dcbacc052a7eec Mon Sep 17 00:00:00= 2001
> From: Mike Kravetz <mike= .kravetz@oracle.com>
> Date: Mon, 20 Ap= r 2020 13:56:15 -0700
> Subject: [PATCH] arm64= /hugetlb: fix hugetlb initialization
>
> When calling hugetlb_add_hstate() to initialize a n= ew hugetlb size,
> be sure to use correct huge= pages size order.
>
> Signed-off-by: Mike Kravetz <mike.kravetz@oracle.com>


I tested this patch on qemu-aarch64.

Cheers,
Anders

>= ---
>  arch/arm64/mm/hugetlbpage.c | 4 += +--
>  1 file changed, 2 insertions(+), 2= deletions(-)
>
>= diff --git a/arch/arm64/mm/hugetlbpage.c b/arch/arm64/mm/hugetlbpage.c
=
> index 9ca840527296..bed6dc7c4276 100644
> --- a/arch/arm64/mm/hugetlbpage.c
> +++ b/arch/arm64/mm/hugetlbpage.c
&= gt; @@ -455,9 +455,9 @@ static int __init hugetlbpage_init(void)
<= div dir=3D"ltr">>  #ifdef CONFIG_ARM64_4K_PAGES
>        hugetlb_add_hstate(PUD_SHIFT - PA= GE_SHIFT);
>  #endif
> -      hugetlb_add_hstate(CONT_PMD_SHIFT - PAGE_= SHIFT);
> +      hugetlb_add_h= state((CONT_PMD_SHIFT + PMD_SHIFT) - PAGE_SHIFT);
>        hugetlb_add_hstate(PMD_SHIFT - PAGE_SHIFT= );
> -      hugetlb_add_hstate= (CONT_PTE_SHIFT - PAGE_SHIFT);
> +   = ;   hugetlb_add_hstate((CONT_PTE_SHIFT + PAGE_SHIFT) - PAGE_SHIFT);
>
>    &= nbsp;   return 0;
>  }
> --
> 2.25.2
>

______= _________________________________________
linux-a= rm-kernel mailing list

--
=
derp
derp
derp
derp
derp
<= /div>
derp
derp
derp
derp
derp=
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
de= rp
derp
derp
<= div dir=3D"ltr">derp
derp
derp
derp
derp
derp
derp
derp
derp
derp=
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
de= rp
derp
derp
<= div dir=3D"ltr">derp
derp
derp
derp
derp
derp
derp
derp
derp
derp=
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
de= rp
derp
derp
<= div dir=3D"ltr">derp
derp
derp
derp
derp
derp
derp
derp
derp
derp=
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
de= rp
derp
derp
<= div dir=3D"ltr">derp
derp
derp
derp
derp
derp
derp
derp
derp
derp=
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
de= rp
derp
derp
<= div dir=3D"ltr">derp
derp
derp
derp
derp
derp
derp
derp
derp
derp=
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
de= rp
derp
derp
<= div dir=3D"ltr">derp
derp
derp
derp
derp
derp
derp
derp
derp
derp=
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp
derp=
derp
derp
derp
---
You received this message because you are subscribed to the Google Groups = "derpyderpderp" group.
To unsubscribe from this g= roup and stop receiving emails from it, send an email to derpyderpderp+unsubscribe@googlegroups.com.
------=_Part_3893_617641698.1587592475034--