Re: UML/man: BLKGETSIZE takes a long, not an int

From: Michael Kerrisk
Date: Mon Aug 27 2007 - 09:27:59 EST


Hello Nicolas,

> I fear that my bug-report yesterday was very badly written, with me writing
> to the wrong mailing-list and all.
>
> I was saying:
>
>> I found a type mismatch in UML that makes host block devices unusable as ubd
>> devices on x86_64 and other 64 bits systems (segfault of the mm subsystem):
>>
>> In block/ioctl.c, the following lines show that the BLKGETSIZE ioctl expects
>> a pointer to a long:
>>
>> case BLKGETSIZE:
>> if ((bdev->bd_inode->i_size >> 9) > ~0UL)
>> return -EFBIG;
>> return put_ulong(arg, bdev->bd_inode->i_size >> 9);
>>
>> In arch/um/os-Linux/file.c, os_file_size calls it with an int.
>>
>> The ioctl_list man page should be fixed as well.

manual page changed for 2.65:

--- ioctl_list.2
+++ ioctl_list.2 (working copy)
@@ -243,7 +243,7 @@
0x0000125D BLKROSET const int *
0x0000125E BLKROGET int *
0x0000125F BLKRRPART void
-0x00001260 BLKGETSIZE int *
+0x00001260 BLKGETSIZE unsigned long *
0x00001261 BLKFLSBUF void
0x00001262 BLKRASET int
0x00001263 BLKRAGET int *

Thanks,

Michael

--
Michael Kerrisk
maintainer of Linux man pages Sections 2, 3, 4, 5, and 7

Want to help with man page maintenance? Grab the latest tarball at
http://www.kernel.org/pub/linux/docs/manpages/
read the HOWTOHELP file and grep the source files for 'FIXME'.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/