linux-user: Add loop control ioctls
Add support for the /dev/loop-control ioctls: LOOP_CTL_ADD LOOP_CTL_REMOVE LOOP_CTL_GET_FREE [RV: fixed to apply to new header guards] Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
This commit is contained in:
parent
c815701e81
commit
884cdc48a9
@ -327,6 +327,10 @@
|
|||||||
IOCTL(LOOP_GET_STATUS64, IOC_W, MK_PTR(MK_STRUCT(STRUCT_loop_info64)))
|
IOCTL(LOOP_GET_STATUS64, IOC_W, MK_PTR(MK_STRUCT(STRUCT_loop_info64)))
|
||||||
IOCTL(LOOP_CHANGE_FD, 0, TYPE_INT)
|
IOCTL(LOOP_CHANGE_FD, 0, TYPE_INT)
|
||||||
|
|
||||||
|
IOCTL(LOOP_CTL_ADD, 0, TYPE_INT)
|
||||||
|
IOCTL(LOOP_CTL_REMOVE, 0, TYPE_INT)
|
||||||
|
IOCTL(LOOP_CTL_GET_FREE, 0, TYPE_NULL)
|
||||||
|
|
||||||
IOCTL(MTIOCTOP, IOC_W, MK_PTR(MK_STRUCT(STRUCT_mtop)))
|
IOCTL(MTIOCTOP, IOC_W, MK_PTR(MK_STRUCT(STRUCT_mtop)))
|
||||||
IOCTL(MTIOCGET, IOC_R, MK_PTR(MK_STRUCT(STRUCT_mtget)))
|
IOCTL(MTIOCGET, IOC_R, MK_PTR(MK_STRUCT(STRUCT_mtget)))
|
||||||
IOCTL(MTIOCPOS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_mtpos)))
|
IOCTL(MTIOCPOS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_mtpos)))
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
/* Copied from 2.6.25 kernel headers to avoid problems on older hosts. */
|
/* Copied from 2.6.25 kernel headers to avoid problems on older hosts,
|
||||||
|
* and subsequently updated to match newer additions to the API.
|
||||||
|
*/
|
||||||
|
|
||||||
#ifndef LINUX_LOOP_H
|
#ifndef LINUX_LOOP_H
|
||||||
#define LINUX_LOOP_H
|
#define LINUX_LOOP_H
|
||||||
@ -92,5 +94,12 @@ struct loop_info64 {
|
|||||||
#define LOOP_SET_STATUS64 0x4C04
|
#define LOOP_SET_STATUS64 0x4C04
|
||||||
#define LOOP_GET_STATUS64 0x4C05
|
#define LOOP_GET_STATUS64 0x4C05
|
||||||
#define LOOP_CHANGE_FD 0x4C06
|
#define LOOP_CHANGE_FD 0x4C06
|
||||||
|
#define LOOP_SET_CAPACITY 0x4C07
|
||||||
|
#define LOOP_SET_DIRECT_IO 0x4C08
|
||||||
|
|
||||||
|
/* /dev/loop-control interface */
|
||||||
|
#define LOOP_CTL_ADD 0x4C80
|
||||||
|
#define LOOP_CTL_REMOVE 0x4C81
|
||||||
|
#define LOOP_CTL_GET_FREE 0x4C82
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -1117,6 +1117,10 @@ struct target_pollfd {
|
|||||||
#define TARGET_LOOP_GET_STATUS64 0x4C05
|
#define TARGET_LOOP_GET_STATUS64 0x4C05
|
||||||
#define TARGET_LOOP_CHANGE_FD 0x4C06
|
#define TARGET_LOOP_CHANGE_FD 0x4C06
|
||||||
|
|
||||||
|
#define TARGET_LOOP_CTL_ADD 0x4C80
|
||||||
|
#define TARGET_LOOP_CTL_REMOVE 0x4C81
|
||||||
|
#define TARGET_LOOP_CTL_GET_FREE 0x4C82
|
||||||
|
|
||||||
/* fb ioctls */
|
/* fb ioctls */
|
||||||
#define TARGET_FBIOGET_VSCREENINFO 0x4600
|
#define TARGET_FBIOGET_VSCREENINFO 0x4600
|
||||||
#define TARGET_FBIOPUT_VSCREENINFO 0x4601
|
#define TARGET_FBIOPUT_VSCREENINFO 0x4601
|
||||||
|
Loading…
Reference in New Issue
Block a user