On Sat, 2010-06-12 at 11:45 -0400, Phillip Susi wrote: > On 06/11/2010 05:16 PM, James Bottomley wrote: > > So best guess is that CONFIG_LBDAF isn't set. This would make all > > sector_t counts wrap at 2TB (32 bits worth of 512 bytes). It would be > > rather a daft thing for a distribution not to have set, though ... > > Bingo, thanks. It doesn't seem to be set on this machine running the > amd64 2.6.32 lucid build which also appears to suffer the same problem. So is this a default kernel or did you build your own ... because if it's a vanilla ubuntu kernel, not setting this config option would be pretty embarrassing (not to mention annoy a lot of users)? > If this config option isn't set though, shouldn't the kernel fail > calls like llseek() that try to exceed the limit, rather than silently > wrap around to the wrong address? Not really ... it's defaulted to y; only people who know what they're doing should set it to N. These people are mostly embedded and will never connect > 2TB devices to their system, so checking is a waste of time and space for them. Plus making the checks exhaustive and foolproof is just about impossible given that we alter the underlying size of sector_t and wrap around without warning is the C default. James -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel