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 7C819C64EC4 for ; Wed, 1 Mar 2023 02:28:51 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1D7AB6B0073; Tue, 28 Feb 2023 21:28:51 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 187C16B007B; Tue, 28 Feb 2023 21:28:51 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 04FFB6B007D; Tue, 28 Feb 2023 21:28:51 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id E71136B0073 for ; Tue, 28 Feb 2023 21:28:50 -0500 (EST) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id C3C42160EE4 for ; Wed, 1 Mar 2023 02:28:50 +0000 (UTC) X-FDA: 80518746420.15.1E36FDF Received: from mail-yw1-f179.google.com (mail-yw1-f179.google.com [209.85.128.179]) by imf22.hostedemail.com (Postfix) with ESMTP id 0AFFFC0005 for ; Wed, 1 Mar 2023 02:28:48 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=RcF5H4kB; spf=pass (imf22.hostedemail.com: domain of surenb@google.com designates 209.85.128.179 as permitted sender) smtp.mailfrom=surenb@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1677637729; 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=SXY1oQ2WsIXXjJ4DmWxT7PSEH+wyquFSNk71L82ApRs=; b=cfKDqumInLNTcqb52H2IhRnNqBKm/L8xSAhOh7dSJyqfq3ve/uzMuykGxaUGYb5wdoZz+c TaXqKJ3XUmNdgb82mBxlsELK5IvBP8gNykNxoKV38N0t448yypoMl2isUIN3bzJ7rnsWz+ S8ZzZOj4lmMAu/C0677TwKSW1IB1xbo= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=RcF5H4kB; spf=pass (imf22.hostedemail.com: domain of surenb@google.com designates 209.85.128.179 as permitted sender) smtp.mailfrom=surenb@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1677637729; a=rsa-sha256; cv=none; b=jWgLn3HrEKnbusZ8rbJ/XAL5Uja/t4N8qXo18mQhXtYPK0arZi4CS/9vOhPBmdYqmXH44W Uf3xvagN81pZt/4btHw1evX2Kz7y2HGAQMlPExZwXoY0O1pky3PEYwwZkANzUP7xmm1QEM cQeC9TI69kPH4YZSSNjfwk5E39gQs50= Received: by mail-yw1-f179.google.com with SMTP id 00721157ae682-536bf92b55cso327885557b3.12 for ; Tue, 28 Feb 2023 18:28:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1677637728; 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=SXY1oQ2WsIXXjJ4DmWxT7PSEH+wyquFSNk71L82ApRs=; b=RcF5H4kBvVfqB5A0I3tNEGPRQprdQKaQuAzsuavQlVaHm3M/SESH3b13I9mje2K4pf VD2+gtFthWzu33EspmSNdK4UvMtwXYAmyMSJN5sstc9tduhs+26gUpQUyJjo84vhLr3i TPJd9LLHAo+uCnWiitlnPkHfTYLrpg01a3s5BHWbnVuM9n6Scu/JgxmfREHT8qC9PmUr /mjAoBrk9d//cLeGukuCUlnE93zl2kmUXMZMytO5CW+vp/1Rh1ZU2GsbB3Vj0Vr5K6Dy mL7ff8du0FEs01FLkWzlJPGUufXH0fX13xxxiHxPTQvCxMRmo/aKPtCsb3aTttCO6FKb ltKw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677637728; 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=SXY1oQ2WsIXXjJ4DmWxT7PSEH+wyquFSNk71L82ApRs=; b=luGk21N4CLO9gATA3TqpnWgBGRydi5yqiMKsIDWBn6m3b7EMwE6fljC4I3IPYO6vtg vlrOTQ4t+hwj5UHPZjPJFTHNe3ut71HSXYx2aSfSCE2cnXckiS/duBEZQ+JA1bQYl+Ps Sbbt7PQX4roXBBIx43QHn7kdOHNWVkEhzsAU848y4O1C5y7opxYfHQ3jOjEU7OLczqP1 4wwZr5xgTAlBUEuNwhMCDz9gF9fLeIibTIEoRnqmTgTeqdxZXKtSN9+VwLYs4E6tES3p VlX3N5bHhGY6qbuHqaTn78NjN3PzFOuyt5CThFO8VvqF6ZssssUZVNA2IgUrR5B1Z3e4 oalg== X-Gm-Message-State: AO0yUKW4fdWFfYRF+ToO7+ISsxILM0jweMwXOp/0pQl2APrCin/9o8jG BayjOiZZJwHV2qEW3E8qRG//fxKBByqAooho7BiHiw== X-Google-Smtp-Source: AK7set+h/4aN4tQrM4x93hI3rpnN6ZQ+Fnu7g9uZNflO6E6VEAIC/i2bGKklkKw0hPCZfm62bqguZXRGNAuj6gb3ZNg= X-Received: by 2002:a81:ae23:0:b0:533:9c5b:7278 with SMTP id m35-20020a81ae23000000b005339c5b7278mr2930762ywh.0.1677637727951; Tue, 28 Feb 2023 18:28:47 -0800 (PST) MIME-Version: 1.0 References: <202302281802.J93Nma7q-lkp@intel.com> In-Reply-To: From: Suren Baghdasaryan Date: Tue, 28 Feb 2023 18:28:36 -0800 Message-ID: Subject: Re: [ammarfaizi2-block:akpm/mm/mm-unstable 82/99] mm/mmap.c:516 vma_prepare() error: we previously assumed 'vp->vma' could be null (see line 505) To: Dan Carpenter Cc: oe-kbuild@lists.linux.dev, lkp@intel.com, oe-kbuild-all@lists.linux.dev, Ammar Faizi , "GNU/Weeb Mailing List" , Andrew Morton , Linux Memory Management List Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 0AFFFC0005 X-Stat-Signature: yyj9a1grpjbne7haj1i3h6ent81tpymn X-HE-Tag: 1677637728-222654 X-HE-Meta: U2FsdGVkX19MKEsBtnPW7t8vYxtqy0ZivYI6weWUg85cwc+PUJ894gP44Nu0ehURhR8HPX0VUyx5CHEncXS5uzuFV18QyjGB7i2SCLWjgibzX3uJwXNUVdNw+3KknB4ZaEgLDZ7foaRdTUafHcyNjZvR2qjqXtG2tuMxXOH5jph6b1hiiDphTrB96cKpEclVcv/Qh1creY8nNbsnAr9BYiQJYAU+vvx4SslXg0o2YiDqWQc9tbxOZu3dXY5Kr76n6yOtmny9Wvi66EG6g9Eqkq7tZC2O/NDWAikGYNfNueNRqmdku3Ttxn482pcmKEXKdVN9duaQD3w6bStUA7ICfJsSSckHCb+9n9iE61UhMoEeL532qUKORbUX+4jO6hBJ+VIebdG12Za9grFvKeR8T9dgnxmbcuStJVN4uz7EIHyD2/IGBc+/uWlkDGiNCrdvvL8uNuxYKzSQLj4y1KmmJLNH3CH/SexoZ5YUrpCwMS7Yz6gJrwetizHZvUVjka11V+E1KYeqqr/3o6AomAN5uN5DatjTrYUK8E050B0Ln/WMV+knAJ2kvg4+sZCicPbwau5SYUSfC4WO/hSFf69RWoqL3JUOK4IpOPtwNfcIutv6wLj0X2VUOPHdblVnaqgbdaHWEggTvNdvMvx23gncyrs0HPqJFDamTnvCNMq91bISCTZvcg32PsvtRnDgRjp9revagZ7BbKWWpjkrrrZPD/tDWaXWuwYcOEDhxpb9QVqRjb0bEbQzw8V2MbyY7q5Bjoi08laQdwtT9rw2pUnyVM2bHlM3RMwlqAa+wpnxyehuyG8l/FDsXSSeqC+c99ztqFsVZ3/mManlTgHwiZh9Q6CiYRgztmxrpeyXXUCW0mmuLKglc2dy4zvIsyLFyIanZsB/ogWWmkmWEfrmaUW+a2yZwkSBNDO7rUFNtjvaRoDxba/WLzsZZ+IN0jgTA0yAVC6rmBzdumNCXqZl6Wk LqTgyZAK /xcpp3Dcc4YYZyxInrx/kfVH13/k50hCw6iCUWTYIIukM1iC+gY6hyqnAvuhkXIdY7zLUvYpqnfFL0lCrJj1WTypsrfYUuOm/gdfjhRxTpeI9FxlkerASqiX7/fQ1JTpX3Dzv+DYCrA7IZL4ghAw+7POFfUq+XJBIAi2nfYsD8n8XPLITzQGkLNl/dNEyWwVyIS5KnsRDhV5/k8dx99fyZ+ZZxLElybuD9+rFCuQVdD8jSa9ehOqlcLEELIFwkALKlhLuiJQrzZElf9XOz17PCU6zy/Hi0mmrfAzTBQ1k/LGvFFBEzlFTQJPUHEGywr73CfctEzJCU0PNwAptO9d5lMauR6kte/CjBRSdtrvckWvgbNK7VnnvGDKZQn89jayMWQlfZQKJN0+cRnwVsWL3WUHnHRKAGn3pzWB2Gk5fu4fY6AsoNwSic2TslTQuezvCVWtnQ1NRmpskzwslkuNvRi3IDOnyrYDy+5aoznISlKzWzGXGNoNiaOjceQ== 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: On Tue, Feb 28, 2023 at 10:04=E2=80=AFAM Suren Baghdasaryan wrote: > > On Tue, Feb 28, 2023 at 6:24 AM Dan Carpenter wrote: > > > > tree: https://github.com/ammarfaizi2/linux-block akpm/mm/mm-unstable > > head: 61edd3b68c3185673c9b05dfe48038692964c73b > > commit: f517f7ae341d933856cdf4d9d773027681ed5dff [82/99] mm/mmap: write= -lock VMAs in vma_prepare before modifying them > > config: i386-randconfig-m021 (https://download.01.org/0day-ci/archive/2= 0230228/202302281802.J93Nma7q-lkp@intel.com/config) > > compiler: gcc-11 (Debian 11.3.0-8) 11.3.0 > > > > If you fix the issue, kindly add following tag where applicable > > | Reported-by: kernel test robot > > | Reported-by: Dan Carpenter > > | Link: https://lore.kernel.org/r/202302281802.J93Nma7q-lkp@intel.com/ > > Thanks for reporting! > > > > > smatch warnings: > > mm/mmap.c:516 vma_prepare() error: we previously assumed 'vp->vma' coul= d be null (see line 505) > > > > vim +516 mm/mmap.c > > > > 440703e082b9c7 Liam R. Howlett 2023-01-20 503 static inline void v= ma_prepare(struct vma_prepare *vp) > > 440703e082b9c7 Liam R. Howlett 2023-01-20 504 { > > f517f7ae341d93 Suren Baghdasaryan 2023-02-27 @505 if (vp->vma) > > > > Check presumes that vp->vma can be NULL. On my other system (with > > yesterday's linux-next code) vp->vma can never be NULL. > > I think the check here is not needed since vp->vma should always be > non-NULL. I'll double-check and will remove it if that is confirmed. Fix is posted at https://lore.kernel.org/all/20230301022720.1380780-1-surenb@google.com/ > Thanks, > Suren. > > > > > f517f7ae341d93 Suren Baghdasaryan 2023-02-27 506 vma_sta= rt_write(vp->vma); > > f517f7ae341d93 Suren Baghdasaryan 2023-02-27 507 if (vp->adj_nex= t) > > f517f7ae341d93 Suren Baghdasaryan 2023-02-27 508 vma_sta= rt_write(vp->adj_next); > > f517f7ae341d93 Suren Baghdasaryan 2023-02-27 509 /* vp->insert i= s always a newly created VMA, no need for locking */ > > f517f7ae341d93 Suren Baghdasaryan 2023-02-27 510 if (vp->remove) > > f517f7ae341d93 Suren Baghdasaryan 2023-02-27 511 vma_sta= rt_write(vp->remove); > > f517f7ae341d93 Suren Baghdasaryan 2023-02-27 512 if (vp->remove2= ) > > f517f7ae341d93 Suren Baghdasaryan 2023-02-27 513 vma_sta= rt_write(vp->remove2); > > f517f7ae341d93 Suren Baghdasaryan 2023-02-27 514 > > 440703e082b9c7 Liam R. Howlett 2023-01-20 515 if (vp->file) { > > 440703e082b9c7 Liam R. Howlett 2023-01-20 @516 uprobe_= munmap(vp->vma, vp->vma->vm_start, vp->vma->vm_end); > > = ^^^^^^^ > > Uncheck dereference. > > > > 440703e082b9c7 Liam R. Howlett 2023-01-20 517 > > 440703e082b9c7 Liam R. Howlett 2023-01-20 518 if (vp-= >adj_next) > > 440703e082b9c7 Liam R. Howlett 2023-01-20 519 = uprobe_munmap(vp->adj_next, vp->adj_next->vm_start, > > 440703e082b9c7 Liam R. Howlett 2023-01-20 520 = vp->adj_next->vm_end); > > 440703e082b9c7 Liam R. Howlett 2023-01-20 521 > > 440703e082b9c7 Liam R. Howlett 2023-01-20 522 i_mmap_= lock_write(vp->mapping); > > 440703e082b9c7 Liam R. Howlett 2023-01-20 523 if (vp-= >insert && vp->insert->vm_file) { > > 440703e082b9c7 Liam R. Howlett 2023-01-20 524 = /* > > 440703e082b9c7 Liam R. Howlett 2023-01-20 525 = * Put into interval tree now, so instantiated pages > > 440703e082b9c7 Liam R. Howlett 2023-01-20 526 = * are visible to arm/parisc __flush_dcache_page > > 440703e082b9c7 Liam R. Howlett 2023-01-20 527 = * throughout; but we cannot insert into address > > 440703e082b9c7 Liam R. Howlett 2023-01-20 528 = * space until vma start or end is updated. > > 440703e082b9c7 Liam R. Howlett 2023-01-20 529 = */ > > 440703e082b9c7 Liam R. Howlett 2023-01-20 530 = __vma_link_file(vp->insert, > > 440703e082b9c7 Liam R. Howlett 2023-01-20 531 = vp->insert->vm_file->f_mapping); > > 440703e082b9c7 Liam R. Howlett 2023-01-20 532 } > > 440703e082b9c7 Liam R. Howlett 2023-01-20 533 } > > 440703e082b9c7 Liam R. Howlett 2023-01-20 534 > > 440703e082b9c7 Liam R. Howlett 2023-01-20 535 if (vp->anon_vm= a) { > > 440703e082b9c7 Liam R. Howlett 2023-01-20 536 anon_vm= a_lock_write(vp->anon_vma); > > 440703e082b9c7 Liam R. Howlett 2023-01-20 537 anon_vm= a_interval_tree_pre_update_vma(vp->vma); > > > > More unchecked dereferences. > > > > 440703e082b9c7 Liam R. Howlett 2023-01-20 538 if (vp-= >adj_next) > > 440703e082b9c7 Liam R. Howlett 2023-01-20 539 = anon_vma_interval_tree_pre_update_vma(vp->adj_next); > > 440703e082b9c7 Liam R. Howlett 2023-01-20 540 } > > 440703e082b9c7 Liam R. Howlett 2023-01-20 541 > > 440703e082b9c7 Liam R. Howlett 2023-01-20 542 if (vp->file) { > > 440703e082b9c7 Liam R. Howlett 2023-01-20 543 flush_d= cache_mmap_lock(vp->mapping); > > 440703e082b9c7 Liam R. Howlett 2023-01-20 544 vma_int= erval_tree_remove(vp->vma, &vp->mapping->i_mmap); > > 440703e082b9c7 Liam R. Howlett 2023-01-20 545 if (vp-= >adj_next) > > 440703e082b9c7 Liam R. Howlett 2023-01-20 546 = vma_interval_tree_remove(vp->adj_next, > > 440703e082b9c7 Liam R. Howlett 2023-01-20 547 = &vp->mapping->i_mmap); > > 440703e082b9c7 Liam R. Howlett 2023-01-20 548 } > > > > -- > > 0-DAY CI Kernel Test Service > > https://github.com/intel/lkp-tests > >