From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH] udf: fix the problem that the disc content is not displayed
Date: Thu, 14 Jan 2021 19:06:05 +0800 [thread overview]
Message-ID: <202101141836.jmJFuC1a-lkp@intel.com> (raw)
In-Reply-To: <20210114075741.30448-1-changlianzhi@uniontech.com>
[-- Attachment #1: Type: text/plain, Size: 10886 bytes --]
Hi lianzhi,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on linus/master]
[also build test ERROR on v5.11-rc3 next-20210114]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/lianzhi-chang/udf-fix-the-problem-that-the-disc-content-is-not-displayed/20210114-161012
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 65f0d2414b7079556fbbcc070b3d1c9f9587606d
config: mips-randconfig-r026-20210114 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 6077d55381a6aa3e947ef7abdc36a7515c598c8a)
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
# install mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
# https://github.com/0day-ci/linux/commit/76a7c356fa5bfe473a3d7c15bda5922c902a33f7
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review lianzhi-chang/udf-fix-the-problem-that-the-disc-content-is-not-displayed/20210114-161012
git checkout 76a7c356fa5bfe473a3d7c15bda5922c902a33f7
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
In file included from include/linux/atomic.h:7:
arch/mips/include/asm/atomic.h:257:1: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare]
ATOMIC_SIP_OP(atomic, int, subu, ll, sc)
^
arch/mips/include/asm/atomic.h:251:7: note: expanded from macro 'ATOMIC_SIP_OP'
if (!__SYNC_loongson3_war) \
^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from fs/udf/super.c:41:
In file included from fs/udf/udfdecl.h:10:
In file included from include/linux/fs.h:6:
In file included from include/linux/wait_bit.h:8:
In file included from include/linux/wait.h:9:
In file included from include/linux/spinlock.h:51:
In file included from include/linux/preempt.h:78:
In file included from ./arch/mips/include/generated/asm/preempt.h:1:
In file included from include/asm-generic/preempt.h:5:
In file included from include/linux/thread_info.h:56:
In file included from arch/mips/include/asm/thread_info.h:16:
In file included from arch/mips/include/asm/processor.h:14:
In file included from include/linux/atomic.h:7:
arch/mips/include/asm/atomic.h:261:1: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare]
ATOMIC_SIP_OP(atomic64, s64, dsubu, lld, scd)
^
arch/mips/include/asm/atomic.h:251:7: note: expanded from macro 'ATOMIC_SIP_OP'
if (!__SYNC_loongson3_war) \
^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from fs/udf/super.c:41:
In file included from fs/udf/udfdecl.h:10:
In file included from include/linux/fs.h:6:
In file included from include/linux/wait_bit.h:8:
In file included from include/linux/wait.h:9:
In file included from include/linux/spinlock.h:59:
In file included from include/linux/lockdep.h:14:
In file included from include/linux/smp.h:15:
In file included from include/linux/smp_types.h:5:
include/linux/llist.h:237:9: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare]
return xchg(&head->first, NULL);
^
arch/mips/include/asm/cmpxchg.h:102:7: note: expanded from macro 'xchg'
if (!__SYNC_loongson3_war) \
^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from fs/udf/super.c:41:
In file included from fs/udf/udfdecl.h:10:
In file included from include/linux/fs.h:6:
In file included from include/linux/wait_bit.h:8:
In file included from include/linux/wait.h:9:
In file included from include/linux/spinlock.h:59:
In file included from include/linux/lockdep.h:27:
include/linux/debug_locks.h:17:9: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare]
return xchg(&debug_locks, 0);
^
arch/mips/include/asm/cmpxchg.h:102:7: note: expanded from macro 'xchg'
if (!__SYNC_loongson3_war) \
^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from fs/udf/super.c:41:
In file included from fs/udf/udfdecl.h:12:
In file included from include/linux/buffer_head.h:14:
In file included from include/linux/pagemap.h:8:
In file included from include/linux/mm.h:33:
In file included from include/linux/pgtable.h:6:
arch/mips/include/asm/pgtable.h:202:3: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare]
cmpxchg64(&buddy->pte, 0, _PAGE_GLOBAL);
^
arch/mips/include/asm/cmpxchg.h:220:2: note: expanded from macro 'cmpxchg64'
cmpxchg((ptr), (o), (n)); \
^
arch/mips/include/asm/cmpxchg.h:194:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) \
^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from fs/udf/super.c:41:
In file included from fs/udf/udfdecl.h:12:
In file included from include/linux/buffer_head.h:14:
In file included from include/linux/pagemap.h:8:
In file included from include/linux/mm.h:33:
In file included from include/linux/pgtable.h:6:
arch/mips/include/asm/pgtable.h:202:3: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare]
arch/mips/include/asm/cmpxchg.h:220:2: note: expanded from macro 'cmpxchg64'
cmpxchg((ptr), (o), (n)); \
^
arch/mips/include/asm/cmpxchg.h:204:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) \
^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
>> fs/udf/super.c:716:64: error: extraneous ')' before ';'
sector_offset = (loff_t)sbi->s_session << sb->s_blocksize_bits);
^
12 warnings and 1 error generated.
vim +716 fs/udf/super.c
693
694 /*
695 * Check Volume Structure Descriptors (ECMA 167 2/9.1)
696 * We also check any "CD-ROM Volume Descriptor Set" (ECMA 167 2/8.3.1)
697 * @return 1 if NSR02 or NSR03 found,
698 * -1 if first sector read error, 0 otherwise
699 */
700 static int udf_check_vsd(struct super_block *sb)
701 {
702 struct volStructDesc *vsd = NULL;
703 loff_t sector = VSD_FIRST_SECTOR_OFFSET;
704 int sectorsize;
705 struct buffer_head *bh = NULL;
706 int nsr = 0;
707 struct udf_sb_info *sbi;
708 loff_t sector_offset;
709
710 sbi = UDF_SB(sb);
711 if (sb->s_blocksize < sizeof(struct volStructDesc))
712 sectorsize = sizeof(struct volStructDesc);
713 else
714 sectorsize = sb->s_blocksize;
715
> 716 sector_offset = (loff_t)sbi->s_session << sb->s_blocksize_bits);
717 sector += sector_offset;
718
719 udf_debug("Starting at sector %u (%lu byte sectors)\n",
720 (unsigned int)(sector >> sb->s_blocksize_bits),
721 sb->s_blocksize);
722 /* Process the sequence (if applicable). The hard limit on the sector
723 * offset is arbitrary, hopefully large enough so that all valid UDF
724 * filesystems will be recognised. There is no mention of an upper
725 * bound to the size of the volume recognition area in the standard.
726 * The limit will prevent the code to read all the sectors of a
727 * specially crafted image (like a bluray disc full of CD001 sectors),
728 * potentially causing minutes or even hours of uninterruptible I/O
729 * activity. This actually happened with uninitialised SSD partitions
730 * (all 0xFF) before the check for the limit and all valid IDs were
731 * added */
732 for (; !nsr && sector < VSD_MAX_SECTOR_OFFSET; sector += sectorsize) {
733 /* Read a block */
734 bh = udf_tread(sb, sector >> sb->s_blocksize_bits);
735 if (!bh)
736 break;
737
738 vsd = (struct volStructDesc *)(bh->b_data +
739 (sector & (sb->s_blocksize - 1)));
740 nsr = identify_vsd(vsd);
741 /* Found NSR or end? */
742 if (nsr) {
743 brelse(bh);
744 break;
745 }
746 /*
747 * Special handling for improperly formatted VRS (e.g., Win10)
748 * where components are separated by 2048 bytes even though
749 * sectors are 4K
750 */
751 if (sb->s_blocksize == 4096) {
752 nsr = identify_vsd(vsd + 1);
753 /* Ignore unknown IDs... */
754 if (nsr < 0)
755 nsr = 0;
756 }
757 brelse(bh);
758 }
759
760 if (nsr > 0)
761 return 1;
762 else if (!bh && sector - sector_offset == VSD_FIRST_SECTOR_OFFSET)
763 return -1;
764 else
765 return 0;
766 }
767
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 37708 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: lianzhi chang <changlianzhi@uniontech.com>,
magnani@ieee.org, jack@suse.com
Cc: kbuild-all@lists.01.org, clang-built-linux@googlegroups.com,
linux-kernel@vger.kernel.org, 282827961@qq.com,
lianzhi chang <changlianzhi@uniontech.com>
Subject: Re: [PATCH] udf: fix the problem that the disc content is not displayed
Date: Thu, 14 Jan 2021 19:06:05 +0800 [thread overview]
Message-ID: <202101141836.jmJFuC1a-lkp@intel.com> (raw)
In-Reply-To: <20210114075741.30448-1-changlianzhi@uniontech.com>
[-- Attachment #1: Type: text/plain, Size: 10666 bytes --]
Hi lianzhi,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on linus/master]
[also build test ERROR on v5.11-rc3 next-20210114]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/lianzhi-chang/udf-fix-the-problem-that-the-disc-content-is-not-displayed/20210114-161012
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 65f0d2414b7079556fbbcc070b3d1c9f9587606d
config: mips-randconfig-r026-20210114 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 6077d55381a6aa3e947ef7abdc36a7515c598c8a)
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
# install mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
# https://github.com/0day-ci/linux/commit/76a7c356fa5bfe473a3d7c15bda5922c902a33f7
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review lianzhi-chang/udf-fix-the-problem-that-the-disc-content-is-not-displayed/20210114-161012
git checkout 76a7c356fa5bfe473a3d7c15bda5922c902a33f7
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
In file included from include/linux/atomic.h:7:
arch/mips/include/asm/atomic.h:257:1: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare]
ATOMIC_SIP_OP(atomic, int, subu, ll, sc)
^
arch/mips/include/asm/atomic.h:251:7: note: expanded from macro 'ATOMIC_SIP_OP'
if (!__SYNC_loongson3_war) \
^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from fs/udf/super.c:41:
In file included from fs/udf/udfdecl.h:10:
In file included from include/linux/fs.h:6:
In file included from include/linux/wait_bit.h:8:
In file included from include/linux/wait.h:9:
In file included from include/linux/spinlock.h:51:
In file included from include/linux/preempt.h:78:
In file included from ./arch/mips/include/generated/asm/preempt.h:1:
In file included from include/asm-generic/preempt.h:5:
In file included from include/linux/thread_info.h:56:
In file included from arch/mips/include/asm/thread_info.h:16:
In file included from arch/mips/include/asm/processor.h:14:
In file included from include/linux/atomic.h:7:
arch/mips/include/asm/atomic.h:261:1: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare]
ATOMIC_SIP_OP(atomic64, s64, dsubu, lld, scd)
^
arch/mips/include/asm/atomic.h:251:7: note: expanded from macro 'ATOMIC_SIP_OP'
if (!__SYNC_loongson3_war) \
^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from fs/udf/super.c:41:
In file included from fs/udf/udfdecl.h:10:
In file included from include/linux/fs.h:6:
In file included from include/linux/wait_bit.h:8:
In file included from include/linux/wait.h:9:
In file included from include/linux/spinlock.h:59:
In file included from include/linux/lockdep.h:14:
In file included from include/linux/smp.h:15:
In file included from include/linux/smp_types.h:5:
include/linux/llist.h:237:9: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare]
return xchg(&head->first, NULL);
^
arch/mips/include/asm/cmpxchg.h:102:7: note: expanded from macro 'xchg'
if (!__SYNC_loongson3_war) \
^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from fs/udf/super.c:41:
In file included from fs/udf/udfdecl.h:10:
In file included from include/linux/fs.h:6:
In file included from include/linux/wait_bit.h:8:
In file included from include/linux/wait.h:9:
In file included from include/linux/spinlock.h:59:
In file included from include/linux/lockdep.h:27:
include/linux/debug_locks.h:17:9: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare]
return xchg(&debug_locks, 0);
^
arch/mips/include/asm/cmpxchg.h:102:7: note: expanded from macro 'xchg'
if (!__SYNC_loongson3_war) \
^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from fs/udf/super.c:41:
In file included from fs/udf/udfdecl.h:12:
In file included from include/linux/buffer_head.h:14:
In file included from include/linux/pagemap.h:8:
In file included from include/linux/mm.h:33:
In file included from include/linux/pgtable.h:6:
arch/mips/include/asm/pgtable.h:202:3: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare]
cmpxchg64(&buddy->pte, 0, _PAGE_GLOBAL);
^
arch/mips/include/asm/cmpxchg.h:220:2: note: expanded from macro 'cmpxchg64'
cmpxchg((ptr), (o), (n)); \
^
arch/mips/include/asm/cmpxchg.h:194:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) \
^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from fs/udf/super.c:41:
In file included from fs/udf/udfdecl.h:12:
In file included from include/linux/buffer_head.h:14:
In file included from include/linux/pagemap.h:8:
In file included from include/linux/mm.h:33:
In file included from include/linux/pgtable.h:6:
arch/mips/include/asm/pgtable.h:202:3: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare]
arch/mips/include/asm/cmpxchg.h:220:2: note: expanded from macro 'cmpxchg64'
cmpxchg((ptr), (o), (n)); \
^
arch/mips/include/asm/cmpxchg.h:204:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) \
^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro '__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
>> fs/udf/super.c:716:64: error: extraneous ')' before ';'
sector_offset = (loff_t)sbi->s_session << sb->s_blocksize_bits);
^
12 warnings and 1 error generated.
vim +716 fs/udf/super.c
693
694 /*
695 * Check Volume Structure Descriptors (ECMA 167 2/9.1)
696 * We also check any "CD-ROM Volume Descriptor Set" (ECMA 167 2/8.3.1)
697 * @return 1 if NSR02 or NSR03 found,
698 * -1 if first sector read error, 0 otherwise
699 */
700 static int udf_check_vsd(struct super_block *sb)
701 {
702 struct volStructDesc *vsd = NULL;
703 loff_t sector = VSD_FIRST_SECTOR_OFFSET;
704 int sectorsize;
705 struct buffer_head *bh = NULL;
706 int nsr = 0;
707 struct udf_sb_info *sbi;
708 loff_t sector_offset;
709
710 sbi = UDF_SB(sb);
711 if (sb->s_blocksize < sizeof(struct volStructDesc))
712 sectorsize = sizeof(struct volStructDesc);
713 else
714 sectorsize = sb->s_blocksize;
715
> 716 sector_offset = (loff_t)sbi->s_session << sb->s_blocksize_bits);
717 sector += sector_offset;
718
719 udf_debug("Starting at sector %u (%lu byte sectors)\n",
720 (unsigned int)(sector >> sb->s_blocksize_bits),
721 sb->s_blocksize);
722 /* Process the sequence (if applicable). The hard limit on the sector
723 * offset is arbitrary, hopefully large enough so that all valid UDF
724 * filesystems will be recognised. There is no mention of an upper
725 * bound to the size of the volume recognition area in the standard.
726 * The limit will prevent the code to read all the sectors of a
727 * specially crafted image (like a bluray disc full of CD001 sectors),
728 * potentially causing minutes or even hours of uninterruptible I/O
729 * activity. This actually happened with uninitialised SSD partitions
730 * (all 0xFF) before the check for the limit and all valid IDs were
731 * added */
732 for (; !nsr && sector < VSD_MAX_SECTOR_OFFSET; sector += sectorsize) {
733 /* Read a block */
734 bh = udf_tread(sb, sector >> sb->s_blocksize_bits);
735 if (!bh)
736 break;
737
738 vsd = (struct volStructDesc *)(bh->b_data +
739 (sector & (sb->s_blocksize - 1)));
740 nsr = identify_vsd(vsd);
741 /* Found NSR or end? */
742 if (nsr) {
743 brelse(bh);
744 break;
745 }
746 /*
747 * Special handling for improperly formatted VRS (e.g., Win10)
748 * where components are separated by 2048 bytes even though
749 * sectors are 4K
750 */
751 if (sb->s_blocksize == 4096) {
752 nsr = identify_vsd(vsd + 1);
753 /* Ignore unknown IDs... */
754 if (nsr < 0)
755 nsr = 0;
756 }
757 brelse(bh);
758 }
759
760 if (nsr > 0)
761 return 1;
762 else if (!bh && sector - sector_offset == VSD_FIRST_SECTOR_OFFSET)
763 return -1;
764 else
765 return 0;
766 }
767
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 37708 bytes --]
next prev parent reply other threads:[~2021-01-14 11:06 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-14 7:57 [PATCH] udf: fix the problem that the disc content is not displayed lianzhi chang
2021-01-14 10:41 ` Jan Kara
2021-01-14 13:22 ` [PATCH] udf: fix the problem that the disc content is not displayed【Suspected phishing email, please pay attention to password security】 changlianzhi
2021-01-14 11:06 ` kernel test robot [this message]
2021-01-14 11:06 ` [PATCH] udf: fix the problem that the disc content is not displayed kernel test robot
-- strict thread matches above, loose matches on Subject: below --
2021-01-14 13:26 lianzhi chang
2021-01-14 17:15 ` Jan Kara
2021-01-12 5:53 lianzhi chang
2021-01-13 12:51 ` Steve Magnani
[not found] ` <1400033179.660265.1610592703732.JavaMail.xmail@bj-wm-cp-9>
2021-01-14 3:21 ` Steve Magnani
2021-01-13 22:25 ` changlianzhi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202101141836.jmJFuC1a-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild-all@lists.01.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.