2023-04-03 06:20:38

by Dan Carpenter

[permalink] [raw]
Subject: fs/ocfs2/super.c:1809 ocfs2_mount_volume() warn: missing error code 'status'

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 7b50567bdcad8925ca1e075feb7171c12015afd1
commit: 0737e01de9c411e4db87dcedf4a9789d41b1c5c1 ocfs2: ocfs2_mount_volume does cleanup job before return error
config: arm64-randconfig-m041-20230329 (https://download.01.org/0day-ci/archive/20230401/[email protected]/config)
compiler: aarch64-linux-gcc (GCC) 12.1.0

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <[email protected]>
| Reported-by: Dan Carpenter <[email protected]>
| Link: https://lore.kernel.org/r/[email protected]/

smatch warnings:
fs/ocfs2/super.c:1809 ocfs2_mount_volume() warn: missing error code 'status'

vim +/status +1809 fs/ocfs2/super.c

ccd979bdbce9fb Mark Fasheh 2005-12-15 1803 static int ocfs2_mount_volume(struct super_block *sb)
ccd979bdbce9fb Mark Fasheh 2005-12-15 1804 {
ccd979bdbce9fb Mark Fasheh 2005-12-15 1805 int status = 0;
ccd979bdbce9fb Mark Fasheh 2005-12-15 1806 struct ocfs2_super *osb = OCFS2_SB(sb);
ccd979bdbce9fb Mark Fasheh 2005-12-15 1807
ccd979bdbce9fb Mark Fasheh 2005-12-15 1808 if (ocfs2_is_hard_readonly(osb))
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 @1809 goto out;

Hard to tell if this should be an error path or not... Canonical
problem with do nothing gotos.

ccd979bdbce9fb Mark Fasheh 2005-12-15 1810
5500ab4ed3b8f0 Gang He 2019-03-05 1811 mutex_init(&osb->obs_trim_fs_mutex);
5500ab4ed3b8f0 Gang He 2019-03-05 1812
ccd979bdbce9fb Mark Fasheh 2005-12-15 1813 status = ocfs2_dlm_init(osb);
ccd979bdbce9fb Mark Fasheh 2005-12-15 1814 if (status < 0) {
ccd979bdbce9fb Mark Fasheh 2005-12-15 1815 mlog_errno(status);
a52370b3b182f7 Gang He 2018-01-31 1816 if (status == -EBADR && ocfs2_userspace_stack(osb))
a52370b3b182f7 Gang He 2018-01-31 1817 mlog(ML_ERROR, "couldn't mount because cluster name on"
a52370b3b182f7 Gang He 2018-01-31 1818 " disk does not match the running cluster name.\n");
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1819 goto out;
ccd979bdbce9fb Mark Fasheh 2005-12-15 1820 }
ccd979bdbce9fb Mark Fasheh 2005-12-15 1821
ccd979bdbce9fb Mark Fasheh 2005-12-15 1822 status = ocfs2_super_lock(osb, 1);
ccd979bdbce9fb Mark Fasheh 2005-12-15 1823 if (status < 0) {
ccd979bdbce9fb Mark Fasheh 2005-12-15 1824 mlog_errno(status);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1825 goto out_dlm;
ccd979bdbce9fb Mark Fasheh 2005-12-15 1826 }
ccd979bdbce9fb Mark Fasheh 2005-12-15 1827
ccd979bdbce9fb Mark Fasheh 2005-12-15 1828 /* This will load up the node map and add ourselves to it. */
ccd979bdbce9fb Mark Fasheh 2005-12-15 1829 status = ocfs2_find_slot(osb);
ccd979bdbce9fb Mark Fasheh 2005-12-15 1830 if (status < 0) {
ccd979bdbce9fb Mark Fasheh 2005-12-15 1831 mlog_errno(status);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1832 goto out_super_lock;
ccd979bdbce9fb Mark Fasheh 2005-12-15 1833 }
ccd979bdbce9fb Mark Fasheh 2005-12-15 1834
ccd979bdbce9fb Mark Fasheh 2005-12-15 1835 /* load all node-local system inodes */
ccd979bdbce9fb Mark Fasheh 2005-12-15 1836 status = ocfs2_init_local_system_inodes(osb);
ccd979bdbce9fb Mark Fasheh 2005-12-15 1837 if (status < 0) {
ccd979bdbce9fb Mark Fasheh 2005-12-15 1838 mlog_errno(status);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1839 goto out_super_lock;
ccd979bdbce9fb Mark Fasheh 2005-12-15 1840 }
ccd979bdbce9fb Mark Fasheh 2005-12-15 1841
ccd979bdbce9fb Mark Fasheh 2005-12-15 1842 status = ocfs2_check_volume(osb);
ccd979bdbce9fb Mark Fasheh 2005-12-15 1843 if (status < 0) {
ccd979bdbce9fb Mark Fasheh 2005-12-15 1844 mlog_errno(status);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1845 goto out_system_inodes;
ccd979bdbce9fb Mark Fasheh 2005-12-15 1846 }
ccd979bdbce9fb Mark Fasheh 2005-12-15 1847
ccd979bdbce9fb Mark Fasheh 2005-12-15 1848 status = ocfs2_truncate_log_init(osb);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1849 if (status < 0) {
ccd979bdbce9fb Mark Fasheh 2005-12-15 1850 mlog_errno(status);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1851 goto out_system_inodes;
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1852 }
c271c5c22b0a7c Sunil Mushran 2006-12-05 1853
ccd979bdbce9fb Mark Fasheh 2005-12-15 1854 ocfs2_super_unlock(osb, 1);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1855 return 0;
ccd979bdbce9fb Mark Fasheh 2005-12-15 1856
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1857 out_system_inodes:
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1858 if (osb->local_alloc_state == OCFS2_LA_ENABLED)
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1859 ocfs2_shutdown_local_alloc(osb);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1860 ocfs2_release_system_inodes(osb);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1861 /* before journal shutdown, we should release slot_info */
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1862 ocfs2_free_slot_info(osb);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1863 ocfs2_journal_shutdown(osb);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1864 out_super_lock:
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1865 ocfs2_super_unlock(osb, 1);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1866 out_dlm:
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1867 ocfs2_dlm_shutdown(osb, 0);
0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1868 out:
ccd979bdbce9fb Mark Fasheh 2005-12-15 1869 return status;
ccd979bdbce9fb Mark Fasheh 2005-12-15 1870 }

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests


2023-04-03 11:11:27

by Joseph Qi

[permalink] [raw]
Subject: Re: fs/ocfs2/super.c:1809 ocfs2_mount_volume() warn: missing error code 'status'

Hi,
IIRC, we've discussed this before.
Success return is expected in case of 'hard readonly'.
So this a false positive report.

Thanks,
Joseph

On 4/3/23 2:14 PM, Dan Carpenter wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 7b50567bdcad8925ca1e075feb7171c12015afd1
> commit: 0737e01de9c411e4db87dcedf4a9789d41b1c5c1 ocfs2: ocfs2_mount_volume does cleanup job before return error
> config: arm64-randconfig-m041-20230329 (https://download.01.org/0day-ci/archive/20230401/[email protected]/config)
> compiler: aarch64-linux-gcc (GCC) 12.1.0
>
> If you fix the issue, kindly add following tag where applicable
> | Reported-by: kernel test robot <[email protected]>
> | Reported-by: Dan Carpenter <[email protected]>
> | Link: https://lore.kernel.org/r/[email protected]/
>
> smatch warnings:
> fs/ocfs2/super.c:1809 ocfs2_mount_volume() warn: missing error code 'status'
>
> vim +/status +1809 fs/ocfs2/super.c
>
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1803 static int ocfs2_mount_volume(struct super_block *sb)
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1804 {
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1805 int status = 0;
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1806 struct ocfs2_super *osb = OCFS2_SB(sb);
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1807
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1808 if (ocfs2_is_hard_readonly(osb))
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 @1809 goto out;
>
> Hard to tell if this should be an error path or not... Canonical
> problem with do nothing gotos.
>
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1810
> 5500ab4ed3b8f0 Gang He 2019-03-05 1811 mutex_init(&osb->obs_trim_fs_mutex);
> 5500ab4ed3b8f0 Gang He 2019-03-05 1812
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1813 status = ocfs2_dlm_init(osb);
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1814 if (status < 0) {
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1815 mlog_errno(status);
> a52370b3b182f7 Gang He 2018-01-31 1816 if (status == -EBADR && ocfs2_userspace_stack(osb))
> a52370b3b182f7 Gang He 2018-01-31 1817 mlog(ML_ERROR, "couldn't mount because cluster name on"
> a52370b3b182f7 Gang He 2018-01-31 1818 " disk does not match the running cluster name.\n");
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1819 goto out;
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1820 }
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1821
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1822 status = ocfs2_super_lock(osb, 1);
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1823 if (status < 0) {
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1824 mlog_errno(status);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1825 goto out_dlm;
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1826 }
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1827
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1828 /* This will load up the node map and add ourselves to it. */
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1829 status = ocfs2_find_slot(osb);
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1830 if (status < 0) {
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1831 mlog_errno(status);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1832 goto out_super_lock;
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1833 }
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1834
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1835 /* load all node-local system inodes */
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1836 status = ocfs2_init_local_system_inodes(osb);
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1837 if (status < 0) {
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1838 mlog_errno(status);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1839 goto out_super_lock;
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1840 }
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1841
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1842 status = ocfs2_check_volume(osb);
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1843 if (status < 0) {
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1844 mlog_errno(status);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1845 goto out_system_inodes;
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1846 }
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1847
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1848 status = ocfs2_truncate_log_init(osb);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1849 if (status < 0) {
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1850 mlog_errno(status);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1851 goto out_system_inodes;
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1852 }
> c271c5c22b0a7c Sunil Mushran 2006-12-05 1853
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1854 ocfs2_super_unlock(osb, 1);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1855 return 0;
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1856
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1857 out_system_inodes:
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1858 if (osb->local_alloc_state == OCFS2_LA_ENABLED)
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1859 ocfs2_shutdown_local_alloc(osb);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1860 ocfs2_release_system_inodes(osb);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1861 /* before journal shutdown, we should release slot_info */
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1862 ocfs2_free_slot_info(osb);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1863 ocfs2_journal_shutdown(osb);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1864 out_super_lock:
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1865 ocfs2_super_unlock(osb, 1);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1866 out_dlm:
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1867 ocfs2_dlm_shutdown(osb, 0);
> 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1868 out:
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1869 return status;
> ccd979bdbce9fb Mark Fasheh 2005-12-15 1870 }
>

2023-04-03 11:26:00

by Dan Carpenter

[permalink] [raw]
Subject: Re: fs/ocfs2/super.c:1809 ocfs2_mount_volume() warn: missing error code 'status'

Sorry, the kbuild bot is not supposed to send duplicate warnings. I
don't know why it was sent again...

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 7b50567bdcad8925ca1e075feb7171c12015afd1
commit: 0737e01de9c411e4db87dcedf4a9789d41b1c5c1 ocfs2: ocfs2_mount_volume does cleanup job before return error
date: 11 months ago
:::::: branch date: 15 hours ago
^^^^^^^^^^^^^^^^^^^^^^^^^
Something happened on Apr 1.

:::::: commit date: 11 months ago
config: arm64-randconfig-m041-20230329 (https://download.01.org/0day-ci/archive/20230401/[email protected]/config)
compiler: aarch64-linux-gcc (GCC) 12.1.0

regards,
dan carpenter

On Mon, Apr 03, 2023 at 07:07:37PM +0800, Joseph Qi wrote:
> Hi,
> IIRC, we've discussed this before.
> Success return is expected in case of 'hard readonly'.
> So this a false positive report.
>
> Thanks,
> Joseph
>
> On 4/3/23 2:14 PM, Dan Carpenter wrote:
> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > head: 7b50567bdcad8925ca1e075feb7171c12015afd1
> > commit: 0737e01de9c411e4db87dcedf4a9789d41b1c5c1 ocfs2: ocfs2_mount_volume does cleanup job before return error
> > config: arm64-randconfig-m041-20230329 (https://download.01.org/0day-ci/archive/20230401/[email protected]/config)
> > compiler: aarch64-linux-gcc (GCC) 12.1.0
> >
> > If you fix the issue, kindly add following tag where applicable
> > | Reported-by: kernel test robot <[email protected]>
> > | Reported-by: Dan Carpenter <[email protected]>
> > | Link: https://lore.kernel.org/r/[email protected]/
> >
> > smatch warnings:
> > fs/ocfs2/super.c:1809 ocfs2_mount_volume() warn: missing error code 'status'
> >
> > vim +/status +1809 fs/ocfs2/super.c
> >
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1803 static int ocfs2_mount_volume(struct super_block *sb)
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1804 {
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1805 int status = 0;
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1806 struct ocfs2_super *osb = OCFS2_SB(sb);
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1807
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1808 if (ocfs2_is_hard_readonly(osb))
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 @1809 goto out;
> >
> > Hard to tell if this should be an error path or not... Canonical
> > problem with do nothing gotos.
> >
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1810
> > 5500ab4ed3b8f0 Gang He 2019-03-05 1811 mutex_init(&osb->obs_trim_fs_mutex);
> > 5500ab4ed3b8f0 Gang He 2019-03-05 1812
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1813 status = ocfs2_dlm_init(osb);
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1814 if (status < 0) {
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1815 mlog_errno(status);
> > a52370b3b182f7 Gang He 2018-01-31 1816 if (status == -EBADR && ocfs2_userspace_stack(osb))
> > a52370b3b182f7 Gang He 2018-01-31 1817 mlog(ML_ERROR, "couldn't mount because cluster name on"
> > a52370b3b182f7 Gang He 2018-01-31 1818 " disk does not match the running cluster name.\n");
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1819 goto out;
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1820 }
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1821
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1822 status = ocfs2_super_lock(osb, 1);
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1823 if (status < 0) {
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1824 mlog_errno(status);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1825 goto out_dlm;
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1826 }
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1827
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1828 /* This will load up the node map and add ourselves to it. */
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1829 status = ocfs2_find_slot(osb);
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1830 if (status < 0) {
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1831 mlog_errno(status);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1832 goto out_super_lock;
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1833 }
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1834
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1835 /* load all node-local system inodes */
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1836 status = ocfs2_init_local_system_inodes(osb);
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1837 if (status < 0) {
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1838 mlog_errno(status);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1839 goto out_super_lock;
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1840 }
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1841
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1842 status = ocfs2_check_volume(osb);
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1843 if (status < 0) {
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1844 mlog_errno(status);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1845 goto out_system_inodes;
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1846 }
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1847
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1848 status = ocfs2_truncate_log_init(osb);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1849 if (status < 0) {
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1850 mlog_errno(status);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1851 goto out_system_inodes;
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1852 }
> > c271c5c22b0a7c Sunil Mushran 2006-12-05 1853
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1854 ocfs2_super_unlock(osb, 1);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1855 return 0;
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1856
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1857 out_system_inodes:
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1858 if (osb->local_alloc_state == OCFS2_LA_ENABLED)
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1859 ocfs2_shutdown_local_alloc(osb);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1860 ocfs2_release_system_inodes(osb);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1861 /* before journal shutdown, we should release slot_info */
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1862 ocfs2_free_slot_info(osb);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1863 ocfs2_journal_shutdown(osb);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1864 out_super_lock:
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1865 ocfs2_super_unlock(osb, 1);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1866 out_dlm:
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1867 ocfs2_dlm_shutdown(osb, 0);
> > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1868 out:
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1869 return status;
> > ccd979bdbce9fb Mark Fasheh 2005-12-15 1870 }
> >

2023-04-04 14:54:29

by Li, Philip

[permalink] [raw]
Subject: Re: fs/ocfs2/super.c:1809 ocfs2_mount_volume() warn: missing error code 'status'

On Mon, Apr 03, 2023 at 02:20:55PM +0300, Dan Carpenter wrote:
> Sorry, the kbuild bot is not supposed to send duplicate warnings. I
> don't know why it was sent again...

Sorry about this, we should ignore this commit in the bot. Now it is configured
to avoid the false positive report.

>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 7b50567bdcad8925ca1e075feb7171c12015afd1
> commit: 0737e01de9c411e4db87dcedf4a9789d41b1c5c1 ocfs2: ocfs2_mount_volume does cleanup job before return error
> date: 11 months ago
> :::::: branch date: 15 hours ago
> ^^^^^^^^^^^^^^^^^^^^^^^^^
> Something happened on Apr 1.
>
> :::::: commit date: 11 months ago
> config: arm64-randconfig-m041-20230329 (https://download.01.org/0day-ci/archive/20230401/[email protected]/config)
> compiler: aarch64-linux-gcc (GCC) 12.1.0
>
> regards,
> dan carpenter
>
> On Mon, Apr 03, 2023 at 07:07:37PM +0800, Joseph Qi wrote:
> > Hi,
> > IIRC, we've discussed this before.
> > Success return is expected in case of 'hard readonly'.
> > So this a false positive report.
> >
> > Thanks,
> > Joseph
> >
> > On 4/3/23 2:14 PM, Dan Carpenter wrote:
> > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > > head: 7b50567bdcad8925ca1e075feb7171c12015afd1
> > > commit: 0737e01de9c411e4db87dcedf4a9789d41b1c5c1 ocfs2: ocfs2_mount_volume does cleanup job before return error
> > > config: arm64-randconfig-m041-20230329 (https://download.01.org/0day-ci/archive/20230401/[email protected]/config)
> > > compiler: aarch64-linux-gcc (GCC) 12.1.0
> > >
> > > If you fix the issue, kindly add following tag where applicable
> > > | Reported-by: kernel test robot <[email protected]>
> > > | Reported-by: Dan Carpenter <[email protected]>
> > > | Link: https://lore.kernel.org/r/[email protected]/
> > >
> > > smatch warnings:
> > > fs/ocfs2/super.c:1809 ocfs2_mount_volume() warn: missing error code 'status'
> > >
> > > vim +/status +1809 fs/ocfs2/super.c
> > >
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1803 static int ocfs2_mount_volume(struct super_block *sb)
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1804 {
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1805 int status = 0;
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1806 struct ocfs2_super *osb = OCFS2_SB(sb);
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1807
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1808 if (ocfs2_is_hard_readonly(osb))
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 @1809 goto out;
> > >
> > > Hard to tell if this should be an error path or not... Canonical
> > > problem with do nothing gotos.
> > >
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1810
> > > 5500ab4ed3b8f0 Gang He 2019-03-05 1811 mutex_init(&osb->obs_trim_fs_mutex);
> > > 5500ab4ed3b8f0 Gang He 2019-03-05 1812
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1813 status = ocfs2_dlm_init(osb);
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1814 if (status < 0) {
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1815 mlog_errno(status);
> > > a52370b3b182f7 Gang He 2018-01-31 1816 if (status == -EBADR && ocfs2_userspace_stack(osb))
> > > a52370b3b182f7 Gang He 2018-01-31 1817 mlog(ML_ERROR, "couldn't mount because cluster name on"
> > > a52370b3b182f7 Gang He 2018-01-31 1818 " disk does not match the running cluster name.\n");
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1819 goto out;
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1820 }
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1821
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1822 status = ocfs2_super_lock(osb, 1);
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1823 if (status < 0) {
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1824 mlog_errno(status);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1825 goto out_dlm;
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1826 }
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1827
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1828 /* This will load up the node map and add ourselves to it. */
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1829 status = ocfs2_find_slot(osb);
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1830 if (status < 0) {
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1831 mlog_errno(status);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1832 goto out_super_lock;
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1833 }
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1834
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1835 /* load all node-local system inodes */
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1836 status = ocfs2_init_local_system_inodes(osb);
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1837 if (status < 0) {
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1838 mlog_errno(status);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1839 goto out_super_lock;
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1840 }
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1841
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1842 status = ocfs2_check_volume(osb);
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1843 if (status < 0) {
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1844 mlog_errno(status);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1845 goto out_system_inodes;
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1846 }
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1847
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1848 status = ocfs2_truncate_log_init(osb);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1849 if (status < 0) {
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1850 mlog_errno(status);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1851 goto out_system_inodes;
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1852 }
> > > c271c5c22b0a7c Sunil Mushran 2006-12-05 1853
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1854 ocfs2_super_unlock(osb, 1);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1855 return 0;
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1856
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1857 out_system_inodes:
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1858 if (osb->local_alloc_state == OCFS2_LA_ENABLED)
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1859 ocfs2_shutdown_local_alloc(osb);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1860 ocfs2_release_system_inodes(osb);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1861 /* before journal shutdown, we should release slot_info */
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1862 ocfs2_free_slot_info(osb);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1863 ocfs2_journal_shutdown(osb);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1864 out_super_lock:
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1865 ocfs2_super_unlock(osb, 1);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1866 out_dlm:
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1867 ocfs2_dlm_shutdown(osb, 0);
> > > 0737e01de9c411 Heming Zhao via Ocfs2-devel 2022-04-29 1868 out:
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1869 return status;
> > > ccd979bdbce9fb Mark Fasheh 2005-12-15 1870 }
> > >
>

2023-04-04 15:24:14

by Dan Carpenter

[permalink] [raw]
Subject: Re: fs/ocfs2/super.c:1809 ocfs2_mount_volume() warn: missing error code 'status'

On Tue, Apr 04, 2023 at 10:50:57PM +0800, Philip Li wrote:
> On Mon, Apr 03, 2023 at 02:20:55PM +0300, Dan Carpenter wrote:
> > Sorry, the kbuild bot is not supposed to send duplicate warnings. I
> > don't know why it was sent again...
>
> Sorry about this, we should ignore this commit in the bot. Now it is configured
> to avoid the false positive report.
>

Fantastic. Thanks, Philip!

regards,
dan carpenter