> +static int bdi_forker_task(void *ptr)> +{> + struct backing_dev_info *me = ptr;> + DEFINE_WAIT(wait);> +> + for (;;) {> + struct backing_dev_info *bdi, *tmp;> +> + /*> + * Do this periodically, like kupdated() did before.> + */> + sync_supers(); Ugh, this looks nasty. Moreover I'm afraid of forker_task() getting stuck(and thus not being able to start new threads) in sync_supers() when somefs is busy and other needs to create flusher thread... Why not just having a separate thread for this? I know we have lots ofkernel threads already but this one seems like a useful one... Or do youplan getting rid of this completely sometime in the near future and syncsupers also from per-bdi thread (which would make a lot of sence to me)?