···57615761 * time 'round when curr_resync == 257625762 */57635763 continue;57645764- prepare_to_wait(&resync_wait, &wq, TASK_UNINTERRUPTIBLE);57645764+ /* We need to wait 'interruptible' so as not to57655765+ * contribute to the load average, and not to57665766+ * be caught by 'softlockup'57675767+ */57685768+ prepare_to_wait(&resync_wait, &wq, TASK_INTERRUPTIBLE);57655769 if (!kthread_should_stop() &&57665770 mddev2->curr_resync >= mddev->curr_resync) {57675771 printk(KERN_INFO "md: delaying %s of %s"···57735769 " share one or more physical units)\n",57745770 desc, mdname(mddev), mdname(mddev2));57755771 mddev_put(mddev2);57725772+ if (signal_pending(current))57735773+ flush_signals(current);57765774 schedule();57775775 finish_wait(&resync_wait, &wq);57785776 goto try_again;