Hi, I have noticed that there are a bunch of outstanding performance patches applied to dm-thin in linux-3.19 including deferring the whole cell instead of only a single bio. Based on the source of linux-3.19-rc5, thin_bio_map() will defer all the DISCARD, FUA, and FLUSH bios by default and try to defer the cell by calling thin_defer_cell() for normal read/write bio requests. As what I have learned from the source, thin_bio_map() is the only one which calls thin_defer_cell() to defer only the cells with a normal read/write bio as its holder. However, process_thin_deferred_cell() still tries to deal with the case that a deferred cell might have a DISCARD bio as its holder which I don't understand how this could happen. Please do correct me if I misunderstand anything. The second question is related to dm_table_event. When dm-thin's free space reaches its low water mark, it will call dm_table_event which eventually send all uevents pending at pool mapped device's uevent list. As far as I know dm-thin does not define and add any uevent into this list, I am not sure why we should still call dm_table_event at this point. Another question is, if this function does not send out any uevent for user space to know that free space is running low, is there any formal way to let user space get this message? Or should I just create a new sysfs attribute to export it? Any help would be grateful. Thanks for your patience. Dennis -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel