[esmil:visionfive 64/80] drivers/gpu/drm/starfive/starfive_drm_vpp.c:602:9: error: implicit declaration of function 'sifive_l2_flush64_range'
by kernel test robot
tree: https://github.com/esmil/linux visionfive
head: e46c3a7e373e6faa03399f1a41c29cf7546c37cb
commit: 1eb3575230496368002bc06d59b7d219c09af47b [64/80] drm/starfive: Add StarFive drm driver
config: arc-allyesconfig (https://download.01.org/0day-ci/archive/20220119/202201191349.mJZAPYfE-lk...)
compiler: arceb-elf-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/esmil/linux/commit/1eb3575230496368002bc06d59b7d219c09...
git remote add esmil https://github.com/esmil/linux
git fetch --no-tags esmil visionfive
git checkout 1eb3575230496368002bc06d59b7d219c09af47b
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arc SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/gpu/drm/starfive/starfive_drm_vpp.c: In function 'vpp1_isr_handler':
>> drivers/gpu/drm/starfive/starfive_drm_vpp.c:602:9: error: implicit declaration of function 'sifive_l2_flush64_range' [-Werror=implicit-function-declaration]
602 | sifive_l2_flush64_range(sf_crtc->dma_addr, sf_crtc->size);
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/starfive/starfive_drm_vpp.c:598:13: warning: variable 'intr_status' set but not used [-Wunused-but-set-variable]
598 | u32 intr_status = 0;
| ^~~~~~~~~~~
cc1: some warnings being treated as errors
vim +/sifive_l2_flush64_range +602 drivers/gpu/drm/starfive/starfive_drm_vpp.c
594
595 irqreturn_t vpp1_isr_handler(int this_irq, void *dev_id)
596 {
597 struct starfive_crtc *sf_crtc = dev_id;
598 u32 intr_status = 0;
599
600 intr_status = sf_fb_vppread32(sf_crtc, 1, PP_INT_STATUS);
601 sf_fb_vppwrite32(sf_crtc, 1, PP_INT_CLR, 0xf);
> 602 sifive_l2_flush64_range(sf_crtc->dma_addr, sf_crtc->size);
603
604 return IRQ_HANDLED;
605 }
606
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months
sound/soc/qcom/sc7180.c:163 sc7180_snd_startup() error: uninitialized symbol 'pll_id'.
by Dan Carpenter
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: e3a8b6a1e70c37702054ae3c7c07ed828435d8ee
commit: 425c5fce8a03c9da70a4c763cd7db22fbb422dcf ASoC: qcom: Add support for ALC5682I-VS codec
config: openrisc-randconfig-m031-20220117 (https://download.01.org/0day-ci/archive/20220118/202201181744.zq89wXU1-lk...)
compiler: or1k-linux-gcc (GCC) 11.2.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Reported-by: Dan Carpenter <dan.carpenter(a)oracle.com>
smatch warnings:
sound/soc/qcom/sc7180.c:163 sc7180_snd_startup() error: uninitialized symbol 'pll_id'.
sound/soc/qcom/sc7180.c:163 sc7180_snd_startup() error: uninitialized symbol 'pll_source'.
sound/soc/qcom/sc7180.c:164 sc7180_snd_startup() error: uninitialized symbol 'pll_in'.
sound/soc/qcom/sc7180.c:164 sc7180_snd_startup() error: uninitialized symbol 'pll_out'.
sound/soc/qcom/sc7180.c:171 sc7180_snd_startup() error: uninitialized symbol 'clk_id'.
vim +/pll_id +163 sound/soc/qcom/sc7180.c
9e3ecb5b16818a Ajit Pandey 2020-10-27 125 static int sc7180_snd_startup(struct snd_pcm_substream *substream)
9e3ecb5b16818a Ajit Pandey 2020-10-27 126 {
9e3ecb5b16818a Ajit Pandey 2020-10-27 127 struct snd_soc_pcm_runtime *rtd = substream->private_data;
9e3ecb5b16818a Ajit Pandey 2020-10-27 128 struct snd_soc_card *card = rtd->card;
9e3ecb5b16818a Ajit Pandey 2020-10-27 129 struct sc7180_snd_data *data = snd_soc_card_get_drvdata(card);
9e3ecb5b16818a Ajit Pandey 2020-10-27 130 struct snd_soc_dai *cpu_dai = asoc_rtd_to_cpu(rtd, 0);
9e3ecb5b16818a Ajit Pandey 2020-10-27 131 struct snd_soc_dai *codec_dai = asoc_rtd_to_codec(rtd, 0);
425c5fce8a03c9 lvzhaoxiong 2021-11-23 132 int pll_id, pll_source, pll_in, pll_out, clk_id, ret;
425c5fce8a03c9 lvzhaoxiong 2021-11-23 133
425c5fce8a03c9 lvzhaoxiong 2021-11-23 134 if (!(strcmp(card->name, "sc7180-rt5682-max98357a-1mic"))) {
425c5fce8a03c9 lvzhaoxiong 2021-11-23 135 pll_source = RT5682_PLL1_S_MCLK;
425c5fce8a03c9 lvzhaoxiong 2021-11-23 136 pll_id = 0;
425c5fce8a03c9 lvzhaoxiong 2021-11-23 137 clk_id = RT5682_SCLK_S_PLL1;
425c5fce8a03c9 lvzhaoxiong 2021-11-23 138 pll_out = RT5682_PLL1_FREQ;
425c5fce8a03c9 lvzhaoxiong 2021-11-23 139 pll_in = DEFAULT_MCLK_RATE;
425c5fce8a03c9 lvzhaoxiong 2021-11-23 140 } else if (!(strcmp(card->name, "sc7180-rt5682s-max98357a-1mic"))) {
425c5fce8a03c9 lvzhaoxiong 2021-11-23 141 pll_source = RT5682S_PLL_S_MCLK;
425c5fce8a03c9 lvzhaoxiong 2021-11-23 142 pll_id = RT5682S_PLL2;
425c5fce8a03c9 lvzhaoxiong 2021-11-23 143 clk_id = RT5682S_SCLK_S_PLL2;
425c5fce8a03c9 lvzhaoxiong 2021-11-23 144 pll_out = RT5682_PLL1_FREQ;
425c5fce8a03c9 lvzhaoxiong 2021-11-23 145 pll_in = DEFAULT_MCLK_RATE;
425c5fce8a03c9 lvzhaoxiong 2021-11-23 146 }
No else statement.
9e3ecb5b16818a Ajit Pandey 2020-10-27 147
9e3ecb5b16818a Ajit Pandey 2020-10-27 148 switch (cpu_dai->id) {
9e3ecb5b16818a Ajit Pandey 2020-10-27 149 case MI2S_PRIMARY:
9e3ecb5b16818a Ajit Pandey 2020-10-27 150 if (++data->pri_mi2s_clk_count == 1) {
9e3ecb5b16818a Ajit Pandey 2020-10-27 151 snd_soc_dai_set_sysclk(cpu_dai,
9e3ecb5b16818a Ajit Pandey 2020-10-27 152 LPASS_MCLK0,
9e3ecb5b16818a Ajit Pandey 2020-10-27 153 DEFAULT_MCLK_RATE,
9e3ecb5b16818a Ajit Pandey 2020-10-27 154 SNDRV_PCM_STREAM_PLAYBACK);
9e3ecb5b16818a Ajit Pandey 2020-10-27 155 }
9e3ecb5b16818a Ajit Pandey 2020-10-27 156
9e3ecb5b16818a Ajit Pandey 2020-10-27 157 snd_soc_dai_set_fmt(codec_dai,
9e3ecb5b16818a Ajit Pandey 2020-10-27 158 SND_SOC_DAIFMT_CBS_CFS |
9e3ecb5b16818a Ajit Pandey 2020-10-27 159 SND_SOC_DAIFMT_NB_NF |
9e3ecb5b16818a Ajit Pandey 2020-10-27 160 SND_SOC_DAIFMT_I2S);
9e3ecb5b16818a Ajit Pandey 2020-10-27 161
9e3ecb5b16818a Ajit Pandey 2020-10-27 162 /* Configure PLL1 for codec */
425c5fce8a03c9 lvzhaoxiong 2021-11-23 @163 ret = snd_soc_dai_set_pll(codec_dai, pll_id, pll_source,
425c5fce8a03c9 lvzhaoxiong 2021-11-23 @164 pll_in, pll_out);
9e3ecb5b16818a Ajit Pandey 2020-10-27 165 if (ret) {
9e3ecb5b16818a Ajit Pandey 2020-10-27 166 dev_err(rtd->dev, "can't set codec pll: %d\n", ret);
9e3ecb5b16818a Ajit Pandey 2020-10-27 167 return ret;
9e3ecb5b16818a Ajit Pandey 2020-10-27 168 }
9e3ecb5b16818a Ajit Pandey 2020-10-27 169
9e3ecb5b16818a Ajit Pandey 2020-10-27 170 /* Configure sysclk for codec */
425c5fce8a03c9 lvzhaoxiong 2021-11-23 @171 ret = snd_soc_dai_set_sysclk(codec_dai, clk_id, pll_out,
9e3ecb5b16818a Ajit Pandey 2020-10-27 172 SND_SOC_CLOCK_IN);
9e3ecb5b16818a Ajit Pandey 2020-10-27 173 if (ret)
9e3ecb5b16818a Ajit Pandey 2020-10-27 174 dev_err(rtd->dev, "snd_soc_dai_set_sysclk err = %d\n",
9e3ecb5b16818a Ajit Pandey 2020-10-27 175 ret);
9e3ecb5b16818a Ajit Pandey 2020-10-27 176
9e3ecb5b16818a Ajit Pandey 2020-10-27 177 break;
9e3ecb5b16818a Ajit Pandey 2020-10-27 178 case MI2S_SECONDARY:
9e3ecb5b16818a Ajit Pandey 2020-10-27 179 break;
9e3ecb5b16818a Ajit Pandey 2020-10-27 180 case LPASS_DP_RX:
9e3ecb5b16818a Ajit Pandey 2020-10-27 181 break;
9e3ecb5b16818a Ajit Pandey 2020-10-27 182 default:
9e3ecb5b16818a Ajit Pandey 2020-10-27 183 dev_err(rtd->dev, "%s: invalid dai id 0x%x\n", __func__,
9e3ecb5b16818a Ajit Pandey 2020-10-27 184 cpu_dai->id);
9e3ecb5b16818a Ajit Pandey 2020-10-27 185 return -EINVAL;
9e3ecb5b16818a Ajit Pandey 2020-10-27 186 }
9e3ecb5b16818a Ajit Pandey 2020-10-27 187 return 0;
9e3ecb5b16818a Ajit Pandey 2020-10-27 188 }
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months
[android-common:android13-5.15 2/9] mm/mmap.c:1815:12: error: too few arguments to function 'vma_merge'
by kernel test robot
tree: https://android.googlesource.com/kernel/common android13-5.15
head: 2c37ba03094d66f3dcb478ef7aa2aa9f737089f7
commit: c7c68b81e19379204a80515cf1b5c444b0128ba0 [2/9] Revert "ANDROID: mm: fix up new call to vma_merge()"
config: i386-tinyconfig (https://download.01.org/0day-ci/archive/20220119/202201191342.IuLE52KL-lk...)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
git remote add android-common https://android.googlesource.com/kernel/common
git fetch --no-tags android-common android13-5.15
git checkout c7c68b81e19379204a80515cf1b5c444b0128ba0
# save the config file to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Note: the android-common/android13-5.15 HEAD 2c37ba03094d66f3dcb478ef7aa2aa9f737089f7 builds fine.
It only hurts bisectability.
All errors (new ones prefixed by >>):
mm/mmap.c: In function 'mmap_region':
>> mm/mmap.c:1815:12: error: too few arguments to function 'vma_merge'
1815 | merge = vma_merge(mm, prev, vma->vm_start, vma->vm_end, vma->vm_flags,
| ^~~~~~~~~
mm/mmap.c:1163:24: note: declared here
1163 | struct vm_area_struct *vma_merge(struct mm_struct *mm,
| ^~~~~~~~~
vim +/vma_merge +1815 mm/mmap.c
fc8744adc870a8d Linus Torvalds 2009-01-31 1724
0165ab443556bdf Miklos Szeredi 2007-07-15 1725 unsigned long mmap_region(struct file *file, unsigned long addr,
897ab3e0c49e24b Mike Rapoport 2017-02-24 1726 unsigned long len, vm_flags_t vm_flags, unsigned long pgoff,
897ab3e0c49e24b Mike Rapoport 2017-02-24 1727 struct list_head *uf)
0165ab443556bdf Miklos Szeredi 2007-07-15 1728 {
0165ab443556bdf Miklos Szeredi 2007-07-15 1729 struct mm_struct *mm = current->mm;
d70cec8983241a6 Miaohe Lin 2020-08-06 1730 struct vm_area_struct *vma, *prev, *merge;
0165ab443556bdf Miklos Szeredi 2007-07-15 1731 int error;
0165ab443556bdf Miklos Szeredi 2007-07-15 1732 struct rb_node **rb_link, *rb_parent;
0165ab443556bdf Miklos Szeredi 2007-07-15 1733 unsigned long charged = 0;
0165ab443556bdf Miklos Szeredi 2007-07-15 1734
e8420a8ece80b3f Cyril Hrubis 2013-04-29 1735 /* Check against address space limit. */
84638335900f199 Konstantin Khlebnikov 2016-01-14 1736 if (!may_expand_vm(mm, vm_flags, len >> PAGE_SHIFT)) {
e8420a8ece80b3f Cyril Hrubis 2013-04-29 1737 unsigned long nr_pages;
e8420a8ece80b3f Cyril Hrubis 2013-04-29 1738
e8420a8ece80b3f Cyril Hrubis 2013-04-29 1739 /*
e8420a8ece80b3f Cyril Hrubis 2013-04-29 1740 * MAP_FIXED may remove pages of mappings that intersects with
e8420a8ece80b3f Cyril Hrubis 2013-04-29 1741 * requested mapping. Account for the pages it would unmap.
e8420a8ece80b3f Cyril Hrubis 2013-04-29 1742 */
e8420a8ece80b3f Cyril Hrubis 2013-04-29 1743 nr_pages = count_vma_pages_range(mm, addr, addr + len);
e8420a8ece80b3f Cyril Hrubis 2013-04-29 1744
84638335900f199 Konstantin Khlebnikov 2016-01-14 1745 if (!may_expand_vm(mm, vm_flags,
84638335900f199 Konstantin Khlebnikov 2016-01-14 1746 (len >> PAGE_SHIFT) - nr_pages))
e8420a8ece80b3f Cyril Hrubis 2013-04-29 1747 return -ENOMEM;
e8420a8ece80b3f Cyril Hrubis 2013-04-29 1748 }
e8420a8ece80b3f Cyril Hrubis 2013-04-29 1749
fb8090b699c3e14 Liam R. Howlett 2020-10-17 1750 /* Clear old maps, set up prev, rb_link, rb_parent, and uf */
fb8090b699c3e14 Liam R. Howlett 2020-10-17 1751 if (munmap_vma_range(mm, addr, len, &prev, &rb_link, &rb_parent, uf))
^1da177e4c3f415 Linus Torvalds 2005-04-16 1752 return -ENOMEM;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1753 /*
^1da177e4c3f415 Linus Torvalds 2005-04-16 1754 * Private writable mapping: check memory availability
^1da177e4c3f415 Linus Torvalds 2005-04-16 1755 */
5a6fe1259506760 Mel Gorman 2009-02-10 1756 if (accountable_mapping(file, vm_flags)) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 1757 charged = len >> PAGE_SHIFT;
191c542442fdf53 Al Viro 2012-02-13 1758 if (security_vm_enough_memory_mm(mm, charged))
^1da177e4c3f415 Linus Torvalds 2005-04-16 1759 return -ENOMEM;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1760 vm_flags |= VM_ACCOUNT;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1761 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 1762
^1da177e4c3f415 Linus Torvalds 2005-04-16 1763 /*
de33c8db5910cda Linus Torvalds 2009-01-29 1764 * Can we just expand an old mapping?
^1da177e4c3f415 Linus Torvalds 2005-04-16 1765 */
19a809afe2fe089 Andrea Arcangeli 2015-09-04 1766 vma = vma_merge(mm, prev, addr, addr + len, vm_flags,
60500a42286de35 Colin Cross 2015-10-27 1767 NULL, file, pgoff, NULL, NULL_VM_UFFD_CTX, NULL);
ba470de43188cdb Rik van Riel 2008-10-18 1768 if (vma)
^1da177e4c3f415 Linus Torvalds 2005-04-16 1769 goto out;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1770
^1da177e4c3f415 Linus Torvalds 2005-04-16 1771 /*
^1da177e4c3f415 Linus Torvalds 2005-04-16 1772 * Determine the object being mapped and call the appropriate
^1da177e4c3f415 Linus Torvalds 2005-04-16 1773 * specific mapper. the address has already been validated, but
^1da177e4c3f415 Linus Torvalds 2005-04-16 1774 * not unmapped, but the maps are removed from the list.
^1da177e4c3f415 Linus Torvalds 2005-04-16 1775 */
490fc053865c9cc Linus Torvalds 2018-07-21 1776 vma = vm_area_alloc(mm);
^1da177e4c3f415 Linus Torvalds 2005-04-16 1777 if (!vma) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 1778 error = -ENOMEM;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1779 goto unacct_error;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1780 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 1781
^1da177e4c3f415 Linus Torvalds 2005-04-16 1782 vma->vm_start = addr;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1783 vma->vm_end = addr + len;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1784 vma->vm_flags = vm_flags;
3ed75eb8f1cd895 Coly Li 2007-10-18 1785 vma->vm_page_prot = vm_get_page_prot(vm_flags);
^1da177e4c3f415 Linus Torvalds 2005-04-16 1786 vma->vm_pgoff = pgoff;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1787
^1da177e4c3f415 Linus Torvalds 2005-04-16 1788 if (file) {
4bb5f5d9395bc11 David Herrmann 2014-08-08 1789 if (vm_flags & VM_SHARED) {
4bb5f5d9395bc11 David Herrmann 2014-08-08 1790 error = mapping_map_writable(file->f_mapping);
4bb5f5d9395bc11 David Herrmann 2014-08-08 1791 if (error)
8d0920bde5eb8ec David Hildenbrand 2021-04-22 1792 goto free_vma;
4bb5f5d9395bc11 David Herrmann 2014-08-08 1793 }
4bb5f5d9395bc11 David Herrmann 2014-08-08 1794
cb0942b81249798 Al Viro 2012-08-27 1795 vma->vm_file = get_file(file);
f74ac01520c9f6d Miklos Szeredi 2017-02-20 1796 error = call_mmap(file, vma);
^1da177e4c3f415 Linus Torvalds 2005-04-16 1797 if (error)
^1da177e4c3f415 Linus Torvalds 2005-04-16 1798 goto unmap_and_free_vma;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1799
309d08d9b3a3659 Liu Zixian 2020-12-05 1800 /* Can addr have changed??
309d08d9b3a3659 Liu Zixian 2020-12-05 1801 *
309d08d9b3a3659 Liu Zixian 2020-12-05 1802 * Answer: Yes, several device drivers can do it in their
309d08d9b3a3659 Liu Zixian 2020-12-05 1803 * f_op->mmap method. -DaveM
309d08d9b3a3659 Liu Zixian 2020-12-05 1804 * Bug: If addr is changed, prev, rb_link, rb_parent should
309d08d9b3a3659 Liu Zixian 2020-12-05 1805 * be updated for vma_link()
309d08d9b3a3659 Liu Zixian 2020-12-05 1806 */
309d08d9b3a3659 Liu Zixian 2020-12-05 1807 WARN_ON_ONCE(addr != vma->vm_start);
309d08d9b3a3659 Liu Zixian 2020-12-05 1808
309d08d9b3a3659 Liu Zixian 2020-12-05 1809 addr = vma->vm_start;
309d08d9b3a3659 Liu Zixian 2020-12-05 1810
d70cec8983241a6 Miaohe Lin 2020-08-06 1811 /* If vm_flags changed after call_mmap(), we should try merge vma again
d70cec8983241a6 Miaohe Lin 2020-08-06 1812 * as we may succeed this time.
d70cec8983241a6 Miaohe Lin 2020-08-06 1813 */
d70cec8983241a6 Miaohe Lin 2020-08-06 1814 if (unlikely(vm_flags != vma->vm_flags && prev)) {
d70cec8983241a6 Miaohe Lin 2020-08-06 @1815 merge = vma_merge(mm, prev, vma->vm_start, vma->vm_end, vma->vm_flags,
c7c68b81e193792 Suren Baghdasaryan 2021-12-28 1816 NULL, vma->vm_file, vma->vm_pgoff, NULL, NULL_VM_UFFD_CTX);
d70cec8983241a6 Miaohe Lin 2020-08-06 1817 if (merge) {
bc4fe4cdd602b3b Miaohe Lin 2020-10-10 1818 /* ->mmap() can change vma->vm_file and fput the original file. So
bc4fe4cdd602b3b Miaohe Lin 2020-10-10 1819 * fput the vma->vm_file here or we would add an extra fput for file
bc4fe4cdd602b3b Miaohe Lin 2020-10-10 1820 * and cause general protection fault ultimately.
bc4fe4cdd602b3b Miaohe Lin 2020-10-10 1821 */
bc4fe4cdd602b3b Miaohe Lin 2020-10-10 1822 fput(vma->vm_file);
d70cec8983241a6 Miaohe Lin 2020-08-06 1823 vm_area_free(vma);
d70cec8983241a6 Miaohe Lin 2020-08-06 1824 vma = merge;
309d08d9b3a3659 Liu Zixian 2020-12-05 1825 /* Update vm_flags to pick up the change. */
d70cec8983241a6 Miaohe Lin 2020-08-06 1826 vm_flags = vma->vm_flags;
d70cec8983241a6 Miaohe Lin 2020-08-06 1827 goto unmap_writable;
d70cec8983241a6 Miaohe Lin 2020-08-06 1828 }
d70cec8983241a6 Miaohe Lin 2020-08-06 1829 }
d70cec8983241a6 Miaohe Lin 2020-08-06 1830
^1da177e4c3f415 Linus Torvalds 2005-04-16 1831 vm_flags = vma->vm_flags;
f8dbf0a7a4c5d98 Huang Shijie 2009-09-21 1832 } else if (vm_flags & VM_SHARED) {
f8dbf0a7a4c5d98 Huang Shijie 2009-09-21 1833 error = shmem_zero_setup(vma);
f8dbf0a7a4c5d98 Huang Shijie 2009-09-21 1834 if (error)
f8dbf0a7a4c5d98 Huang Shijie 2009-09-21 1835 goto free_vma;
bfd40eaff5abb9f Kirill A. Shutemov 2018-07-26 1836 } else {
bfd40eaff5abb9f Kirill A. Shutemov 2018-07-26 1837 vma_set_anonymous(vma);
f8dbf0a7a4c5d98 Huang Shijie 2009-09-21 1838 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 1839
c462ac288f2c97e Catalin Marinas 2019-11-25 1840 /* Allow architectures to sanity-check the vm_flags */
c462ac288f2c97e Catalin Marinas 2019-11-25 1841 if (!arch_validate_flags(vma->vm_flags)) {
c462ac288f2c97e Catalin Marinas 2019-11-25 1842 error = -EINVAL;
c462ac288f2c97e Catalin Marinas 2019-11-25 1843 if (file)
c462ac288f2c97e Catalin Marinas 2019-11-25 1844 goto unmap_and_free_vma;
c462ac288f2c97e Catalin Marinas 2019-11-25 1845 else
c462ac288f2c97e Catalin Marinas 2019-11-25 1846 goto free_vma;
c462ac288f2c97e Catalin Marinas 2019-11-25 1847 }
c462ac288f2c97e Catalin Marinas 2019-11-25 1848
4d3d5b41a72b525 Oleg Nesterov 2008-04-28 1849 vma_link(mm, vma, prev, rb_link, rb_parent);
4d3d5b41a72b525 Oleg Nesterov 2008-04-28 1850 /* Once vma denies write, undo our temporary denial count */
d70cec8983241a6 Miaohe Lin 2020-08-06 1851 unmap_writable:
8d0920bde5eb8ec David Hildenbrand 2021-04-22 1852 if (file && vm_flags & VM_SHARED)
4bb5f5d9395bc11 David Herrmann 2014-08-08 1853 mapping_unmap_writable(file->f_mapping);
e86867720e61777 Oleg Nesterov 2013-09-11 1854 file = vma->vm_file;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1855 out:
cdd6c482c9ff9c5 Ingo Molnar 2009-09-21 1856 perf_event_mmap(vma);
0a4a93919bdc5ce Peter Zijlstra 2009-03-30 1857
84638335900f199 Konstantin Khlebnikov 2016-01-14 1858 vm_stat_account(mm, vm_flags, len >> PAGE_SHIFT);
^1da177e4c3f415 Linus Torvalds 2005-04-16 1859 if (vm_flags & VM_LOCKED) {
e1fb4a0864958fa Dave Jiang 2018-08-17 1860 if ((vm_flags & VM_SPECIAL) || vma_is_dax(vma) ||
e1fb4a0864958fa Dave Jiang 2018-08-17 1861 is_vm_hugetlb_page(vma) ||
e1fb4a0864958fa Dave Jiang 2018-08-17 1862 vma == get_gate_vma(current->mm))
de60f5f10c58d4f Eric B Munson 2015-11-05 1863 vma->vm_flags &= VM_LOCKED_CLEAR_MASK;
e1fb4a0864958fa Dave Jiang 2018-08-17 1864 else
e1fb4a0864958fa Dave Jiang 2018-08-17 1865 mm->locked_vm += (len >> PAGE_SHIFT);
bebeb3d68b24bb4 Michel Lespinasse 2013-02-22 1866 }
2b144498350860b Srikar Dronamraju 2012-02-09 1867
c7a3a88c938fbe3 Oleg Nesterov 2012-08-19 1868 if (file)
c7a3a88c938fbe3 Oleg Nesterov 2012-08-19 1869 uprobe_mmap(vma);
2b144498350860b Srikar Dronamraju 2012-02-09 1870
d9104d1ca966249 Cyrill Gorcunov 2013-09-11 1871 /*
d9104d1ca966249 Cyrill Gorcunov 2013-09-11 1872 * New (or expanded) vma always get soft dirty status.
d9104d1ca966249 Cyrill Gorcunov 2013-09-11 1873 * Otherwise user-space soft-dirty page tracker won't
d9104d1ca966249 Cyrill Gorcunov 2013-09-11 1874 * be able to distinguish situation when vma area unmapped,
d9104d1ca966249 Cyrill Gorcunov 2013-09-11 1875 * then new mapped in-place (which must be aimed as
d9104d1ca966249 Cyrill Gorcunov 2013-09-11 1876 * a completely new data area).
d9104d1ca966249 Cyrill Gorcunov 2013-09-11 1877 */
d9104d1ca966249 Cyrill Gorcunov 2013-09-11 1878 vma->vm_flags |= VM_SOFTDIRTY;
d9104d1ca966249 Cyrill Gorcunov 2013-09-11 1879
64e455079e1bd77 Peter Feiner 2014-10-13 1880 vma_set_page_prot(vma);
64e455079e1bd77 Peter Feiner 2014-10-13 1881
^1da177e4c3f415 Linus Torvalds 2005-04-16 1882 return addr;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1883
^1da177e4c3f415 Linus Torvalds 2005-04-16 1884 unmap_and_free_vma:
1527f926fd04490 Christian König 2020-10-09 1885 fput(vma->vm_file);
^1da177e4c3f415 Linus Torvalds 2005-04-16 1886 vma->vm_file = NULL;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1887
^1da177e4c3f415 Linus Torvalds 2005-04-16 1888 /* Undo any partial mapping done by a device driver. */
e0da382c92626ad Hugh Dickins 2005-04-19 1889 unmap_region(mm, vma, prev, vma->vm_start, vma->vm_end);
e0da382c92626ad Hugh Dickins 2005-04-19 1890 charged = 0;
4bb5f5d9395bc11 David Herrmann 2014-08-08 1891 if (vm_flags & VM_SHARED)
4bb5f5d9395bc11 David Herrmann 2014-08-08 1892 mapping_unmap_writable(file->f_mapping);
^1da177e4c3f415 Linus Torvalds 2005-04-16 1893 free_vma:
3928d4f5ee37cdc Linus Torvalds 2018-07-21 1894 vm_area_free(vma);
^1da177e4c3f415 Linus Torvalds 2005-04-16 1895 unacct_error:
^1da177e4c3f415 Linus Torvalds 2005-04-16 1896 if (charged)
^1da177e4c3f415 Linus Torvalds 2005-04-16 1897 vm_unacct_memory(charged);
^1da177e4c3f415 Linus Torvalds 2005-04-16 1898 return error;
^1da177e4c3f415 Linus Torvalds 2005-04-16 1899 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 1900
:::::: The code at line 1815 was first introduced by commit
:::::: d70cec8983241a6aafadf78e2d65bbafac87ab6a mm: mmap: merge vma after call_mmap() if possible
:::::: TO: Miaohe Lin <linmiaohe(a)huawei.com>
:::::: CC: Linus Torvalds <torvalds(a)linux-foundation.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months
[agd5f:drm-next 56/91] drivers/gpu/drm/amd/amdgpu/umc_v8_7.c:97:18: warning: variable 'umc_reg_offset' set but not used
by kernel test robot
tree: https://gitlab.freedesktop.org/agd5f/linux.git drm-next
head: e23fcf632883babbea03fc27f7993e151969b652
commit: c34242eea16f7d973501267142dd340cad3caeec [56/91] drm/amdgpu: add new query interface for umc_v8_7 block
config: powerpc-allmodconfig (https://download.01.org/0day-ci/archive/20220119/202201191227.YskrG1I5-lk...)
compiler: powerpc-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git remote add agd5f https://gitlab.freedesktop.org/agd5f/linux.git
git fetch --no-tags agd5f drm-next
git checkout c34242eea16f7d973501267142dd340cad3caeec
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=powerpc SHELL=/bin/bash drivers/gpu/drm/amd/amdgpu/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
drivers/gpu/drm/amd/amdgpu/umc_v8_7.c: In function 'umc_v8_7_ecc_info_query_ras_error_count':
>> drivers/gpu/drm/amd/amdgpu/umc_v8_7.c:97:18: warning: variable 'umc_reg_offset' set but not used [-Wunused-but-set-variable]
97 | uint32_t umc_reg_offset = 0;
| ^~~~~~~~~~~~~~
vim +/umc_reg_offset +97 drivers/gpu/drm/amd/amdgpu/umc_v8_7.c
89
90 static void umc_v8_7_ecc_info_query_ras_error_count(struct amdgpu_device *adev,
91 void *ras_error_status)
92 {
93 struct ras_err_data *err_data = (struct ras_err_data *)ras_error_status;
94
95 uint32_t umc_inst = 0;
96 uint32_t ch_inst = 0;
> 97 uint32_t umc_reg_offset = 0;
98 uint32_t channel_index = 0;
99
100 /* TODO: driver needs to toggle DF Cstate to ensure
101 * safe access of UMC registers. Will add the protection
102 */
103 LOOP_UMC_INST_AND_CH(umc_inst, ch_inst) {
104 umc_reg_offset = get_umc_v8_7_reg_offset(adev,
105 umc_inst,
106 ch_inst);
107 channel_index = get_umc_v8_7_channel_index(adev,
108 umc_inst,
109 ch_inst);
110 umc_v8_7_ecc_info_query_correctable_error_count(adev,
111 channel_index,
112 &(err_data->ce_count));
113 umc_v8_7_ecc_info_querry_uncorrectable_error_count(adev,
114 channel_index,
115 &(err_data->ue_count));
116 }
117 }
118
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months
[djwong-xfs:vectorized-scrub 99/334] fs/xfs/scrub/fscounters.c:198 xchk_fscounters_freeze() warn: inconsistent returns '&sb->s_umount'.
by Dan Carpenter
tree: https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git vectorized-scrub
head: 8427da8e62fbcf9a04e5b2663fe60b97d6911417
commit: 8dd594d12f08acc6c6fa388b2cae3e270bf8effc [99/334] xfs: stabilize fs summary counters for online fsck
config: ia64-randconfig-m031-20220116 (https://download.01.org/0day-ci/archive/20220117/202201170928.GcIhOWMI-lk...)
compiler: ia64-linux-gcc (GCC) 11.2.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Reported-by: Dan Carpenter <dan.carpenter(a)oracle.com>
smatch warnings:
fs/xfs/scrub/fscounters.c:198 xchk_fscounters_freeze() warn: inconsistent returns '&sb->s_umount'.
vim +198 fs/xfs/scrub/fscounters.c
8dd594d12f08acc Darrick J. Wong 2022-01-06 125 STATIC int
8dd594d12f08acc Darrick J. Wong 2022-01-06 126 xchk_fscounters_freeze(
8dd594d12f08acc Darrick J. Wong 2022-01-06 127 struct xfs_scrub *sc)
8dd594d12f08acc Darrick J. Wong 2022-01-06 128 {
8dd594d12f08acc Darrick J. Wong 2022-01-06 129 struct xchk_fscounters *fsc = sc->buf;
8dd594d12f08acc Darrick J. Wong 2022-01-06 130 struct xfs_mount *mp = sc->mp;
8dd594d12f08acc Darrick J. Wong 2022-01-06 131 struct super_block *sb = mp->m_super;
8dd594d12f08acc Darrick J. Wong 2022-01-06 132 int level;
8dd594d12f08acc Darrick J. Wong 2022-01-06 133 int error = 0;
8dd594d12f08acc Darrick J. Wong 2022-01-06 134
8dd594d12f08acc Darrick J. Wong 2022-01-06 135 if (sc->flags & XCHK_HAVE_FREEZE_PROT) {
8dd594d12f08acc Darrick J. Wong 2022-01-06 136 sc->flags &= ~XCHK_HAVE_FREEZE_PROT;
8dd594d12f08acc Darrick J. Wong 2022-01-06 137 mnt_drop_write_file(sc->file);
8dd594d12f08acc Darrick J. Wong 2022-01-06 138 }
8dd594d12f08acc Darrick J. Wong 2022-01-06 139
8dd594d12f08acc Darrick J. Wong 2022-01-06 140 /* Wait until we're ready to freeze or give up. */
8dd594d12f08acc Darrick J. Wong 2022-01-06 141 down_write(&sb->s_umount);
8dd594d12f08acc Darrick J. Wong 2022-01-06 142 while (sb->s_writers.frozen != SB_UNFROZEN) {
8dd594d12f08acc Darrick J. Wong 2022-01-06 143 up_write(&sb->s_umount);
8dd594d12f08acc Darrick J. Wong 2022-01-06 144
8dd594d12f08acc Darrick J. Wong 2022-01-06 145 if (xchk_should_terminate(sc, &error))
8dd594d12f08acc Darrick J. Wong 2022-01-06 146 return error;
8dd594d12f08acc Darrick J. Wong 2022-01-06 147
8dd594d12f08acc Darrick J. Wong 2022-01-06 148 delay(HZ / 10);
8dd594d12f08acc Darrick J. Wong 2022-01-06 149 down_write(&sb->s_umount);
8dd594d12f08acc Darrick J. Wong 2022-01-06 150 }
8dd594d12f08acc Darrick J. Wong 2022-01-06 151
8dd594d12f08acc Darrick J. Wong 2022-01-06 152 if (sb_rdonly(sb)) {
8dd594d12f08acc Darrick J. Wong 2022-01-06 153 sb->s_writers.frozen = SB_FREEZE_EXCLUSIVE;
8dd594d12f08acc Darrick J. Wong 2022-01-06 154 goto done;
8dd594d12f08acc Darrick J. Wong 2022-01-06 155 }
8dd594d12f08acc Darrick J. Wong 2022-01-06 156
8dd594d12f08acc Darrick J. Wong 2022-01-06 157 sb->s_writers.frozen = SB_FREEZE_WRITE;
8dd594d12f08acc Darrick J. Wong 2022-01-06 158 /* Release s_umount to preserve sb_start_write -> s_umount ordering */
8dd594d12f08acc Darrick J. Wong 2022-01-06 159 up_write(&sb->s_umount);
8dd594d12f08acc Darrick J. Wong 2022-01-06 160 percpu_down_write(sb->s_writers.rw_sem + SB_FREEZE_WRITE - 1);
8dd594d12f08acc Darrick J. Wong 2022-01-06 161 down_write(&sb->s_umount);
8dd594d12f08acc Darrick J. Wong 2022-01-06 162
8dd594d12f08acc Darrick J. Wong 2022-01-06 163 /* Now we go and block page faults... */
8dd594d12f08acc Darrick J. Wong 2022-01-06 164 sb->s_writers.frozen = SB_FREEZE_PAGEFAULT;
8dd594d12f08acc Darrick J. Wong 2022-01-06 165 percpu_down_write(sb->s_writers.rw_sem + SB_FREEZE_PAGEFAULT - 1);
8dd594d12f08acc Darrick J. Wong 2022-01-06 166
8dd594d12f08acc Darrick J. Wong 2022-01-06 167 /*
8dd594d12f08acc Darrick J. Wong 2022-01-06 168 * All writers are done so after syncing there won't be dirty data.
8dd594d12f08acc Darrick J. Wong 2022-01-06 169 * Let xfs_fs_sync_fs flush dirty data so the VFS won't start writeback
8dd594d12f08acc Darrick J. Wong 2022-01-06 170 * and to disable the background gc workers.
8dd594d12f08acc Darrick J. Wong 2022-01-06 171 */
8dd594d12f08acc Darrick J. Wong 2022-01-06 172 error = sync_filesystem(sb);
8dd594d12f08acc Darrick J. Wong 2022-01-06 173 if (error) {
8dd594d12f08acc Darrick J. Wong 2022-01-06 174 sb->s_writers.frozen = SB_UNFROZEN;
8dd594d12f08acc Darrick J. Wong 2022-01-06 175 for (level = SB_FREEZE_PAGEFAULT; level >= 0; level--)
8dd594d12f08acc Darrick J. Wong 2022-01-06 176 percpu_up_write(sb->s_writers.rw_sem + level);
8dd594d12f08acc Darrick J. Wong 2022-01-06 177 wake_up(&sb->s_writers.wait_unfrozen);
Smatch wanted an up_write(&sb->s_umount); but this looks intentional?
8dd594d12f08acc Darrick J. Wong 2022-01-06 178 return error;
8dd594d12f08acc Darrick J. Wong 2022-01-06 179 }
8dd594d12f08acc Darrick J. Wong 2022-01-06 180
8dd594d12f08acc Darrick J. Wong 2022-01-06 181 /* Now wait for internal filesystem counter */
8dd594d12f08acc Darrick J. Wong 2022-01-06 182 sb->s_writers.frozen = SB_FREEZE_FS;
8dd594d12f08acc Darrick J. Wong 2022-01-06 183 percpu_down_write(sb->s_writers.rw_sem + SB_FREEZE_FS - 1);
8dd594d12f08acc Darrick J. Wong 2022-01-06 184
8dd594d12f08acc Darrick J. Wong 2022-01-06 185 /*
8dd594d12f08acc Darrick J. Wong 2022-01-06 186 * We do not need to quiesce the log to check the summary counters, so
8dd594d12f08acc Darrick J. Wong 2022-01-06 187 * skip the call to xfs_fs_freeze here. To prevent anyone else from
8dd594d12f08acc Darrick J. Wong 2022-01-06 188 * unfreezing us, set the VFS freeze level to one higher than
8dd594d12f08acc Darrick J. Wong 2022-01-06 189 * FREEZE_COMPLETE.
8dd594d12f08acc Darrick J. Wong 2022-01-06 190 */
8dd594d12f08acc Darrick J. Wong 2022-01-06 191 sb->s_writers.frozen = SB_FREEZE_EXCLUSIVE;
8dd594d12f08acc Darrick J. Wong 2022-01-06 192 for (level = SB_FREEZE_LEVELS - 1; level >= 0; level--)
8dd594d12f08acc Darrick J. Wong 2022-01-06 193 percpu_rwsem_release(sb->s_writers.rw_sem + level, 0,
8dd594d12f08acc Darrick J. Wong 2022-01-06 194 _THIS_IP_);
8dd594d12f08acc Darrick J. Wong 2022-01-06 195 done:
8dd594d12f08acc Darrick J. Wong 2022-01-06 196 fsc->frozen = true;
8dd594d12f08acc Darrick J. Wong 2022-01-06 197 up_write(&sb->s_umount);
8dd594d12f08acc Darrick J. Wong 2022-01-06 @198 return 0;
8dd594d12f08acc Darrick J. Wong 2022-01-06 199 }
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months
[agd5f:drm-next 56/91] drivers/gpu/drm/amd/amdgpu/umc_v8_7.c:97:11: warning: variable 'umc_reg_offset' set but not used
by kernel test robot
tree: https://gitlab.freedesktop.org/agd5f/linux.git drm-next
head: e23fcf632883babbea03fc27f7993e151969b652
commit: c34242eea16f7d973501267142dd340cad3caeec [56/91] drm/amdgpu: add new query interface for umc_v8_7 block
config: i386-randconfig-a001-20220117 (https://download.01.org/0day-ci/archive/20220119/202201191214.xx7M9Hem-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project f7b7138a62648f4019c55e4671682af1f851f295)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git remote add agd5f https://gitlab.freedesktop.org/agd5f/linux.git
git fetch --no-tags agd5f drm-next
git checkout c34242eea16f7d973501267142dd340cad3caeec
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/gpu/drm/amd/amdgpu/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/gpu/drm/amd/amdgpu/umc_v8_7.c:97:11: warning: variable 'umc_reg_offset' set but not used [-Wunused-but-set-variable]
uint32_t umc_reg_offset = 0;
^
1 warning generated.
vim +/umc_reg_offset +97 drivers/gpu/drm/amd/amdgpu/umc_v8_7.c
89
90 static void umc_v8_7_ecc_info_query_ras_error_count(struct amdgpu_device *adev,
91 void *ras_error_status)
92 {
93 struct ras_err_data *err_data = (struct ras_err_data *)ras_error_status;
94
95 uint32_t umc_inst = 0;
96 uint32_t ch_inst = 0;
> 97 uint32_t umc_reg_offset = 0;
98 uint32_t channel_index = 0;
99
100 /* TODO: driver needs to toggle DF Cstate to ensure
101 * safe access of UMC registers. Will add the protection
102 */
103 LOOP_UMC_INST_AND_CH(umc_inst, ch_inst) {
104 umc_reg_offset = get_umc_v8_7_reg_offset(adev,
105 umc_inst,
106 ch_inst);
107 channel_index = get_umc_v8_7_channel_index(adev,
108 umc_inst,
109 ch_inst);
110 umc_v8_7_ecc_info_query_correctable_error_count(adev,
111 channel_index,
112 &(err_data->ce_count));
113 umc_v8_7_ecc_info_querry_uncorrectable_error_count(adev,
114 channel_index,
115 &(err_data->ue_count));
116 }
117 }
118
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months