From: Nick Desaulniers <ndesaulniers@google.com> To: dennis@kernel.org Cc: kbuild@lists.01.org, clang-built-linux <clang-built-linux@googlegroups.com>, kbuild test robot <lkp@intel.com>, kbuild-all@lists.01.org, David Sterba <dsterba@suse.com>, Chris Mason <clm@fb.com>, Josef Bacik <josef@toxicpanda.com>, osandov@osandov.com, kernel-team@fb.com, linux-btrfs@vger.kernel.org Subject: Re: [PATCH 05/22] btrfs: add the beginning of async discard, discard workqueue Date: Thu, 21 Nov 2019 20:27:43 -0800 [thread overview] Message-ID: <CAKwvOdn5j37AYzmoOsaSqyYdBkjqevbTrSyGQypB+G_NgxX0fQ@mail.gmail.com> (raw) In-Reply-To: <201911220351.HPI9gxNo%lkp@intel.com> Hi Dennis, Below is a 0day bot report from a build w/ Clang. Warning looks legit, can you please take a look? On Thu, Nov 21, 2019 at 11:27 AM kbuild test robot <lkp@intel.com> wrote: > > CC: kbuild-all@lists.01.org > In-Reply-To: <63d3257efe1158a6fbbd7abe865cd9250b494438.1574282259.git.dennis@kernel.org> > References: <63d3257efe1158a6fbbd7abe865cd9250b494438.1574282259.git.dennis@kernel.org> > TO: Dennis Zhou <dennis@kernel.org> > CC: David Sterba <dsterba@suse.com>, Chris Mason <clm@fb.com>, Josef Bacik <josef@toxicpanda.com>, Omar Sandoval <osandov@osandov.com> > CC: kernel-team@fb.com, linux-btrfs@vger.kernel.org, Dennis Zhou <dennis@kernel.org> > > Hi Dennis, > > I love your patch! Perhaps something to improve: > > [auto build test WARNING on kdave/for-next] > [also build test WARNING on next-20191121] > [cannot apply to v5.4-rc8] > [if your patch is applied to the wrong git tree, please drop us a note to help > improve the system. BTW, we also suggest to use '--base' option to specify the > base tree in git format-patch, please see https://stackoverflow.com/a/37406982] > > url: https://github.com/0day-ci/linux/commits/Dennis-Zhou/btrfs-async-discard-support/20191121-230429 > base: https://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux.git for-next > config: arm64-defconfig (attached as .config) > compiler: clang version 10.0.0 (git://gitmirror/llvm_project cf823ce4ad9d04c69b7c29d236f7b14c875111c2) > reproduce: > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > # save the attached .config to linux build tree > make.cross ARCH=arm64 > > If you fix the issue, kindly add following tag > Reported-by: kbuild test robot <lkp@intel.com> > > All warnings (new ones prefixed by >>): > > >> fs/btrfs/free-space-cache.c:3238:6: warning: variable 'trim_state' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized] > if (!ret) { > ^~~~ > fs/btrfs/free-space-cache.c:3251:53: note: uninitialized use occurs here > __btrfs_add_free_space(fs_info, ctl, start, bytes, trim_state); > ^~~~~~~~~~ > fs/btrfs/free-space-cache.c:3238:2: note: remove the 'if' if its condition is always true > if (!ret) { > ^~~~~~~~~~ > fs/btrfs/free-space-cache.c:3224:2: note: variable 'trim_state' is declared here > enum btrfs_trim_state trim_state; > ^ > 1 warning generated. > > vim +3238 fs/btrfs/free-space-cache.c > > 3210 > 3211 static int do_trimming(struct btrfs_block_group *block_group, > 3212 u64 *total_trimmed, u64 start, u64 bytes, > 3213 u64 reserved_start, u64 reserved_bytes, > 3214 enum btrfs_trim_state reserved_trim_state, > 3215 struct btrfs_trim_range *trim_entry) > 3216 { > 3217 struct btrfs_space_info *space_info = block_group->space_info; > 3218 struct btrfs_fs_info *fs_info = block_group->fs_info; > 3219 struct btrfs_free_space_ctl *ctl = block_group->free_space_ctl; > 3220 int ret; > 3221 int update = 0; > 3222 u64 end = start + bytes; > 3223 u64 reserved_end = reserved_start + reserved_bytes; > 3224 enum btrfs_trim_state trim_state; > 3225 u64 trimmed = 0; > 3226 > 3227 spin_lock(&space_info->lock); > 3228 spin_lock(&block_group->lock); > 3229 if (!block_group->ro) { > 3230 block_group->reserved += reserved_bytes; > 3231 space_info->bytes_reserved += reserved_bytes; > 3232 update = 1; > 3233 } > 3234 spin_unlock(&block_group->lock); > 3235 spin_unlock(&space_info->lock); > 3236 > 3237 ret = btrfs_discard_extent(fs_info, start, bytes, &trimmed); > > 3238 if (!ret) { > 3239 *total_trimmed += trimmed; > 3240 trim_state = BTRFS_TRIM_STATE_TRIMMED; > 3241 } > 3242 > 3243 mutex_lock(&ctl->cache_writeout_mutex); > 3244 if (reserved_start < start) > 3245 __btrfs_add_free_space(fs_info, ctl, reserved_start, > 3246 start - reserved_start, > 3247 reserved_trim_state); > 3248 if (start + bytes < reserved_start + reserved_bytes) > 3249 __btrfs_add_free_space(fs_info, ctl, end, reserved_end - end, > 3250 reserved_trim_state); > 3251 __btrfs_add_free_space(fs_info, ctl, start, bytes, trim_state); ^ oops > 3252 list_del(&trim_entry->list); > 3253 mutex_unlock(&ctl->cache_writeout_mutex); > 3254 > 3255 if (update) { > 3256 spin_lock(&space_info->lock); > 3257 spin_lock(&block_group->lock); > 3258 if (block_group->ro) > 3259 space_info->bytes_readonly += reserved_bytes; > 3260 block_group->reserved -= reserved_bytes; > 3261 space_info->bytes_reserved -= reserved_bytes; > 3262 spin_unlock(&block_group->lock); > 3263 spin_unlock(&space_info->lock); > 3264 } > 3265 > 3266 return ret; > 3267 } > 3268 > > --- > 0-DAY kernel test infrastructure Open Source Technology Center > https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation -- Thanks, ~Nick Desaulniers
WARNING: multiple messages have this Message-ID (diff)
From: Nick Desaulniers <ndesaulniers@google.com> To: kbuild-all@lists.01.org Subject: Re: [PATCH 05/22] btrfs: add the beginning of async discard, discard workqueue Date: Thu, 21 Nov 2019 20:27:43 -0800 [thread overview] Message-ID: <CAKwvOdn5j37AYzmoOsaSqyYdBkjqevbTrSyGQypB+G_NgxX0fQ@mail.gmail.com> (raw) In-Reply-To: <201911220351.HPI9gxNo%lkp@intel.com> [-- Attachment #1: Type: text/plain, Size: 5928 bytes --] Hi Dennis, Below is a 0day bot report from a build w/ Clang. Warning looks legit, can you please take a look? On Thu, Nov 21, 2019 at 11:27 AM kbuild test robot <lkp@intel.com> wrote: > > CC: kbuild-all(a)lists.01.org > In-Reply-To: <63d3257efe1158a6fbbd7abe865cd9250b494438.1574282259.git.dennis@kernel.org> > References: <63d3257efe1158a6fbbd7abe865cd9250b494438.1574282259.git.dennis@kernel.org> > TO: Dennis Zhou <dennis@kernel.org> > CC: David Sterba <dsterba@suse.com>, Chris Mason <clm@fb.com>, Josef Bacik <josef@toxicpanda.com>, Omar Sandoval <osandov@osandov.com> > CC: kernel-team(a)fb.com, linux-btrfs(a)vger.kernel.org, Dennis Zhou <dennis@kernel.org> > > Hi Dennis, > > I love your patch! Perhaps something to improve: > > [auto build test WARNING on kdave/for-next] > [also build test WARNING on next-20191121] > [cannot apply to v5.4-rc8] > [if your patch is applied to the wrong git tree, please drop us a note to help > improve the system. BTW, we also suggest to use '--base' option to specify the > base tree in git format-patch, please see https://stackoverflow.com/a/37406982] > > url: https://github.com/0day-ci/linux/commits/Dennis-Zhou/btrfs-async-discard-support/20191121-230429 > base: https://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux.git for-next > config: arm64-defconfig (attached as .config) > compiler: clang version 10.0.0 (git://gitmirror/llvm_project cf823ce4ad9d04c69b7c29d236f7b14c875111c2) > reproduce: > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > # save the attached .config to linux build tree > make.cross ARCH=arm64 > > If you fix the issue, kindly add following tag > Reported-by: kbuild test robot <lkp@intel.com> > > All warnings (new ones prefixed by >>): > > >> fs/btrfs/free-space-cache.c:3238:6: warning: variable 'trim_state' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized] > if (!ret) { > ^~~~ > fs/btrfs/free-space-cache.c:3251:53: note: uninitialized use occurs here > __btrfs_add_free_space(fs_info, ctl, start, bytes, trim_state); > ^~~~~~~~~~ > fs/btrfs/free-space-cache.c:3238:2: note: remove the 'if' if its condition is always true > if (!ret) { > ^~~~~~~~~~ > fs/btrfs/free-space-cache.c:3224:2: note: variable 'trim_state' is declared here > enum btrfs_trim_state trim_state; > ^ > 1 warning generated. > > vim +3238 fs/btrfs/free-space-cache.c > > 3210 > 3211 static int do_trimming(struct btrfs_block_group *block_group, > 3212 u64 *total_trimmed, u64 start, u64 bytes, > 3213 u64 reserved_start, u64 reserved_bytes, > 3214 enum btrfs_trim_state reserved_trim_state, > 3215 struct btrfs_trim_range *trim_entry) > 3216 { > 3217 struct btrfs_space_info *space_info = block_group->space_info; > 3218 struct btrfs_fs_info *fs_info = block_group->fs_info; > 3219 struct btrfs_free_space_ctl *ctl = block_group->free_space_ctl; > 3220 int ret; > 3221 int update = 0; > 3222 u64 end = start + bytes; > 3223 u64 reserved_end = reserved_start + reserved_bytes; > 3224 enum btrfs_trim_state trim_state; > 3225 u64 trimmed = 0; > 3226 > 3227 spin_lock(&space_info->lock); > 3228 spin_lock(&block_group->lock); > 3229 if (!block_group->ro) { > 3230 block_group->reserved += reserved_bytes; > 3231 space_info->bytes_reserved += reserved_bytes; > 3232 update = 1; > 3233 } > 3234 spin_unlock(&block_group->lock); > 3235 spin_unlock(&space_info->lock); > 3236 > 3237 ret = btrfs_discard_extent(fs_info, start, bytes, &trimmed); > > 3238 if (!ret) { > 3239 *total_trimmed += trimmed; > 3240 trim_state = BTRFS_TRIM_STATE_TRIMMED; > 3241 } > 3242 > 3243 mutex_lock(&ctl->cache_writeout_mutex); > 3244 if (reserved_start < start) > 3245 __btrfs_add_free_space(fs_info, ctl, reserved_start, > 3246 start - reserved_start, > 3247 reserved_trim_state); > 3248 if (start + bytes < reserved_start + reserved_bytes) > 3249 __btrfs_add_free_space(fs_info, ctl, end, reserved_end - end, > 3250 reserved_trim_state); > 3251 __btrfs_add_free_space(fs_info, ctl, start, bytes, trim_state); ^ oops > 3252 list_del(&trim_entry->list); > 3253 mutex_unlock(&ctl->cache_writeout_mutex); > 3254 > 3255 if (update) { > 3256 spin_lock(&space_info->lock); > 3257 spin_lock(&block_group->lock); > 3258 if (block_group->ro) > 3259 space_info->bytes_readonly += reserved_bytes; > 3260 block_group->reserved -= reserved_bytes; > 3261 space_info->bytes_reserved -= reserved_bytes; > 3262 spin_unlock(&block_group->lock); > 3263 spin_unlock(&space_info->lock); > 3264 } > 3265 > 3266 return ret; > 3267 } > 3268 > > --- > 0-DAY kernel test infrastructure Open Source Technology Center > https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org Intel Corporation -- Thanks, ~Nick Desaulniers
next parent reply other threads:[~2019-11-22 4:27 UTC|newest] Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <201911220351.HPI9gxNo%lkp@intel.com> 2019-11-22 4:27 ` Nick Desaulniers [this message] 2019-11-22 4:27 ` [PATCH 05/22] btrfs: add the beginning of async discard, discard workqueue Nick Desaulniers 2019-11-25 18:59 ` Dennis Zhou 2019-11-25 18:59 ` Dennis Zhou 2019-11-25 19:39 ` Nick Desaulniers 2019-11-25 19:39 ` Nick Desaulniers 2019-11-26 1:42 ` Philip Li 2019-11-26 1:42 ` Philip Li 2019-11-26 1:42 ` Philip Li 2019-11-26 1:47 ` Nick Desaulniers 2019-11-26 1:47 ` Nick Desaulniers 2019-11-26 4:07 ` Philip Li 2019-11-26 4:07 ` Philip Li 2019-11-26 4:07 ` Philip Li 2019-11-26 4:09 ` Philip Li 2019-11-26 4:09 ` Philip Li 2019-11-26 4:09 ` Philip Li 2019-12-14 0:22 [PATCH v6 00/22] btrfs: async discard support Dennis Zhou 2019-12-14 0:22 ` [PATCH 05/22] btrfs: add the beginning of async discard, discard workqueue Dennis Zhou -- strict thread matches above, loose matches on Subject: below -- 2019-12-09 19:45 [PATCH v5 00/22] btrfs: async discard support Dennis Zhou 2019-12-09 19:45 ` [PATCH 05/22] btrfs: add the beginning of async discard, discard workqueue Dennis Zhou 2019-11-25 19:46 [PATCH v4 00/22] btrfs: async discard support Dennis Zhou 2019-11-25 19:46 ` [PATCH 05/22] btrfs: add the beginning of async discard, discard workqueue Dennis Zhou 2019-11-20 21:50 [PATCH v3 00/22] btrfs: async discard support Dennis Zhou 2019-11-20 21:51 ` [PATCH 05/22] btrfs: add the beginning of async discard, discard workqueue Dennis Zhou 2019-10-23 22:52 [PATCH v2 00/22] btrfs: async discard support Dennis Zhou 2019-10-23 22:52 ` [PATCH 05/22] btrfs: add the beginning of async discard, discard workqueue Dennis Zhou 2019-11-11 18:49 ` David Sterba
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=CAKwvOdn5j37AYzmoOsaSqyYdBkjqevbTrSyGQypB+G_NgxX0fQ@mail.gmail.com \ --to=ndesaulniers@google.com \ --cc=clang-built-linux@googlegroups.com \ --cc=clm@fb.com \ --cc=dennis@kernel.org \ --cc=dsterba@suse.com \ --cc=josef@toxicpanda.com \ --cc=kbuild-all@lists.01.org \ --cc=kbuild@lists.01.org \ --cc=kernel-team@fb.com \ --cc=linux-btrfs@vger.kernel.org \ --cc=lkp@intel.com \ --cc=osandov@osandov.com \ /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: linkBe 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.