Merge branch '4.7-fixes' into mips-for-linux-next
[deliverable/linux.git] / fs / fs-writeback.c
index 592cea54cea0f2e4010f80c77e74c16527c36927..fe7e83a45efffeb85329b194b03208e6223817e3 100644 (file)
@@ -483,9 +483,9 @@ static void inode_switch_wbs(struct inode *inode, int new_wb_id)
                goto out_free;
        }
        inode->i_state |= I_WB_SWITCH;
+       __iget(inode);
        spin_unlock(&inode->i_lock);
 
-       ihold(inode);
        isw->inode = inode;
 
        atomic_inc(&isw_nr_in_flight);
@@ -931,7 +931,8 @@ void wb_start_writeback(struct bdi_writeback *wb, long nr_pages,
         * This is WB_SYNC_NONE writeback, so if allocation fails just
         * wakeup the thread for old dirty data writeback
         */
-       work = kzalloc(sizeof(*work), GFP_ATOMIC);
+       work = kzalloc(sizeof(*work),
+                      GFP_NOWAIT | __GFP_NOMEMALLOC | __GFP_NOWARN);
        if (!work) {
                trace_writeback_nowork(wb);
                wb_wakeup(wb);
This page took 0.046119 seconds and 5 git commands to generate.