btrfs-progs: Set info->periodic.timer_fd to 0 in init-fail

In current code, (info->periodic.timer_fd == 0) means it is not
valid, as:
  if (info->periodic.timer_fd) {
      close(info->periodic.timer_fd);
      ...

We need set its value from -1 to 0 in create-fail case, to make
code like above works.

Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
master
Zhao Lei 2015-07-27 20:24:30 +08:00 committed by David Sterba
parent f156337dc8
commit cb3424cd23
1 changed files with 3 additions and 1 deletions

View File

@ -94,8 +94,10 @@ int task_period_start(struct task_info *info, unsigned int period_ms)
return -1;
info->periodic.timer_fd = timerfd_create(CLOCK_MONOTONIC, 0);
if (info->periodic.timer_fd == -1)
if (info->periodic.timer_fd == -1) {
info->periodic.timer_fd = 0;
return info->periodic.timer_fd;
}
info->periodic.wakeups_missed = 0;