• Hidehiro Kawai's avatar
    jbd: don't abort if flushing file data failed · cbe5f466
    Hidehiro Kawai authored
    In ordered mode, the current jbd aborts the journal if a file data buffer
    has an error.  But this behavior is unintended, and we found that it has
    been adopted accidentally.
    
    This patch undoes it and just calls printk() instead of aborting the
    journal.  Additionally, set AS_EIO into the address_space object of the
    failed buffer which is submitted by journal_do_submit_data() so that
    fsync() can get -EIO.
    
    Missing error checkings are also added to inform errors on file data
    buffers to the user.  The following buffers are targeted.
    
      (a) the buffer which has already been written out by pdflush
      (b) the buffer which has been unlocked before scanned in the
          t_locked_list loop
    
    [akpm@linux-foundation.org: improve grammar in a printk]
    Signed-off-by: default avatarHidehiro Kawai <hidehiro.kawai.ez@hitachi.com>
    Acked-by: default avatarJan Kara <jack@suse.cz>
    Cc: <linux-ext4@vger.kernel.org>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    cbe5f466
commit.c 27.1 KB