diff --git a/[refs] b/[refs] index aedf29d115d1..5c7db219b492 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 4dfd79e7b42bff334128907e28c3b41f1ef1cec8 +refs/heads/master: 8e9d78edea3ce5c0036f85b93091483f2f15443a diff --git a/trunk/fs/buffer.c b/trunk/fs/buffer.c index a3ef091a45bd..28f320fac4d4 100644 --- a/trunk/fs/buffer.c +++ b/trunk/fs/buffer.c @@ -1165,8 +1165,11 @@ void mark_buffer_dirty(struct buffer_head *bh) if (!test_set_buffer_dirty(bh)) { struct page *page = bh->b_page; - if (!TestSetPageDirty(page)) - __set_page_dirty(page, page_mapping(page), 0); + if (!TestSetPageDirty(page)) { + struct address_space *mapping = page_mapping(page); + if (mapping) + __set_page_dirty(page, mapping, 0); + } } }