diff --git a/sy_old/sy_generic.c b/sy_old/sy_generic.c index cf3da937..34c05598 100644 --- a/sy_old/sy_generic.c +++ b/sy_old/sy_generic.c @@ -621,6 +621,7 @@ restart: } if (found_dir && ++rounds < 10) { + schedule(); goto restart; } @@ -633,6 +634,8 @@ restart: struct mars_dent *dent = container_of(tmp, struct mars_dent, dent_link); #ifdef CONFIG_MARS_USE_SYSLOG msleep(10); // yield +#else + schedule(); #endif //MARS_IO("forward prepare '%s'\n", dent->d_path); status = worker(buf, dent, true, false); @@ -665,6 +668,8 @@ restart: up_read(&global->dent_mutex); #ifdef CONFIG_MARS_USE_SYSLOG msleep(10); // yield +#else + schedule(); #endif //MARS_IO("forward treat '%s'\n", dent->d_path); status = worker(buf, dent, false, false); @@ -683,6 +688,8 @@ restart: up_read(&global->dent_mutex); #ifdef CONFIG_MARS_USE_SYSLOG msleep(10); // yield +#else + schedule(); #endif //MARS_IO("backward treat '%s'\n", dent->d_path); status = worker(buf, dent, false, true);