On Wed, Apr 6, 2011 at 11:06 AM, Tejun Heo <tj@xxxxxxxxxx> wrote: > On Tue, Apr 05, 2011 at 12:21:30PM +0530, Amit Shah wrote: >> > But I don't think this is the correct place to do it. The problem >> > happens because block layer consumes the event but doesn't remember it >> > when the time for revalidation comes. It should be done by block >> > layer, not sr. Hmmm... looking at the code, the new disk event code >> > should handle this correctly. Was 2.6.38 showing the problem too? >> >> Yes, 2.6.38 shows the same problem. I went back to ancient kernels >> (2.6.31 on Fedora 11-alpha) which had the previous media_changed >> infrastructure and those places too show the same behaviour (with the >> TEST_UNIT_READY way of detecting media changes). > > Can you please the patch attached in the following bz and see whether > it makes any difference? > > https://bugzilla.kernel.org/show_bug.cgi?id=13029 Hi Tejun, There is a related issue I have been discussing with Amit: https://lkml.org/lkml/2011/3/23/156 On media change the inode size is not updated by the sr driver or the universal cdrom driver. A userspace process that holds a /dev/sr0 file descriptor open across media change causes all processes on the system to see the old medium size when they do lseek(fd, 0, SEEK_END). I think it would make sense to refresh the inode size on media change so that even open file descriptors see the new size and a single process cannot force a stale value for all other userspace processes on the system. Thoughts? Stefan -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html