--- linux-2.4.21.SuSE/mm/filemap.c 2003-07-04 14:02:32.000000000 +0200 +++ linux-2.4.21.SuSE.new/mm/filemap.c 2003-07-23 16:01:54.000000000 +0200 @@ -1708,7 +1708,8 @@ } up(&inode->i_sem); up_read(&inode->i_alloc_sem); - UPDATE_ATIME(filp->f_dentry->d_inode); + if (!S_ISBLK(inode->i_mode)) + UPDATE_ATIME(filp->f_dentry->d_inode); goto out; } } @@ -3612,7 +3613,8 @@ time_t now = CURRENT_TIME; remove_suid(inode); - if (inode->i_ctime != now || inode->i_mtime != now) { + if ((inode->i_ctime != now || inode->i_mtime != now) && + !S_ISBLK(inode->i_mode)) { inode->i_ctime = inode->i_mtime = now; mark_inode_dirty_sync(inode); }