History | View | Annotate | Download (14.4 kB)
virtio-9p: fix build on !CONFIG_UTIMENSAT
This patch introduce a fallback mechanism for old systems that do notsupport utimensat(). This fix build failure with following warnings:
hw/virtio-9p-local.c: In function 'local_utimensat':hw/virtio-9p-local.c:479: warning: implicit declaration of function 'utimensat'...
[virtio-9p] Add datasync to server side TFSYNC/RFSYNC for dotl
SYNOPSIS size4 Tfsync tag2 fid4 datasync4
size[4] Rfsync tag[2]
DESCRIPTION
The Tfsync transaction transfers ("flushes") all modified in-core data of file identified by fid to the disk device (or other permanent storage...
[virtio-9p] Use preadv/pwritev instead of readv/writev
readv & writev, read & write respectively from the current offsetof the file & hence their use has to be preceeded by a call to lseek.preadv/writev can be used instead, as they take the offset as an argument....
virtio-9p: Use layered xattr approach
We would need this to make sure we handle the mappedsecurity model correctly for different xattr names.
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>Signed-off-by: Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com>
virtio-9p: Hide user.virtfs xattr in case of mapped security.
With mapped security mode we use "user.virtfs" namespace is usedto store the virtFs related attributes. So hide it from user.
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
virtio-9p: Add SM_NONE security model
This is equivalent to SM_PASSTHROUGH security model.The only exception is, failure of privilige operation like chownare ignored. This makes a passthrough like security model usablefor people who runs kvm as non root...
virtio-9p: Use lchown which won't follow symlink
We should always use functions which don't followsymlink on the server
virtio-9p: Add support for removing xattr
virtio-9p: Implement TXATTRWALK
TXATTRWALK: Descend a ATTR namespace
size[4] TXATTRWALK tag[2] fid[4] newfid[4] name[s] size[4] RXATTRWALK tag[2] size[8]
txattrwalk gets a fid pointing to xattr. This fid can later beused to get read the xattr value. If name is NULL the fid returned...
virtio-9p: Implement TXATTRCREATE
TXATTRCREATE: Prepare a fid for setting xattr value on a file system object.
size[4] TXATTRCREATE tag[2] fid[4] name[s] attr_size[8] flags[4] size[4] RXATTRWALK tag[2]
txattrcreate gets a fid pointing to xattr. This fid can later be...
virtio-9p: Implement server side of setattr for 9P2000.L protocol.
SYNOPSIS
size[4] Tsetattr tag[2] attr[n]
size[4] Rsetattr tag[2]
The setattr command changes some of the file status information. attr resembles the iattr structure used in Linux kernel. It...
qemu: virtio-9p: Implement statfs support in server
Implement statfs support in qemu server based on Sripathi'sinitial statfs patch.
Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com>Signed-off-by: Sripathi Kodi <sripathik@in.ibm.com>Signed-off-by: Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com>
virtio-9p: Do not reset atime
Current code resets file's atime to 0 when there is a change in mtime. This results in resetting the atime to "1970-01-01 05:30:00". For example, truncate -s 0 filename results in changing the mtime to the truncate time, but resets the atime to "1970-01-01 05:30:00". utime...
Remove useless NULL check for qemu_strdup return value
Found with this Coccinelle semantic patch:@expression E;identifier ptr;identifier fn ~= "qemu_strn?dup";@
@expression E;identifier ptr;identifier fn ~= "qemu_strn?dup";
ptr = fn(E);-if (ptr == NULL) { ... }+ptr = fn(E);
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
virtio-9p: Security model for mkdir
Signed-off-by: Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
virtio-9p: Security model for symlink and readlink
Mapped mode stores extended attributes in the user space of the extendedattributes. Given that the user space extended attributes are availableto regular files only, special files are created as regular files on the...
virtio-9p: Implement Security model for mknod
virtio-9p: Implement Security model for mksock using mknod.
This patch uses mknod to create socket.
On Host/Fileserver:rw------. 1 virfsuid virtfsgid 0 2010-05-11 09:57 asocket1
On Guest/Client:srwxr-xr-x 1 guestuser guestuser 0 2010-05-11 12:57 asocket1...
virtio-9p: Make infrastructure for the new security model.
This patch adds required infrastructure for the new security model.
- A new configure option for attr/xattr.- if CONFIG_VIRTFS will be defined if both CONFIG_LINUX and CONFIG_ATTR defined.- Defines routines related to both security models....
virtio-9p: Security model for chmod
virtio-9p: Security model for chown
mapped model changes the owner in the extended attributes.passthrough model does the change through lchown() as theserver don't need to follow the link and client will send theactual filesystem object.
Signed-off-by: Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com>...
virtio-9p: Implemented Security model for lstat and fstat
virtio-9p: Security model for create/open2
In the mapped security model, VirtFS server intercepts and mapsthe file object create and get/set attribute requests. Files on the fileserverwill be created with VirtFS servers (QEMU) user credentials and theclient-users credentials are stored in extended attributes. On the request...
virtio-9p: Add P9_TOPEN support.
Implement P9_TOPEN support.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
virtio-9p: Add P9_TREAD support
Implement P9_TREAD support.
virtio-9p: Add P9_TWRITE support
Implement P9_TWRITE support.This gets write to file to work
virtio-9p: Add P9_TCREATE support
Implement P9_TCREATE support.[jvrao@linux.vnet.ibm.com: strdup to qemu_strdup conversion]
virtio-9p: Add P9_TWSTAT support
Implement P9_TWSTAT support.This gets file and directory creation to work.
[jvrao@linux.vnet.ibm.com: strdup to qemu_strdup conversion][aneesh.kumar@linux.vnet.ibm.com: v9fs_fix_path]
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>...
virtio-9p: Add P9_TREMOVE support.
Implement P9_TREMOVE support.This gets file deletion to work.
[mohan@in.ibm.com: Fix truncate to use the relative path]
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>...
virtio-9p: Add minimal set of FileOperations
Add minimal set of FileOperations and the corresponding implementations forlocal fstype. These will be required for the FID management patches later on.
[aneesh.kumar@linux.vnet.ibm.com: rpath fix ]Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>...
virtio-9p: Add a virtio 9p device to qemu
This patch doesn't implement the 9p protocol handlingcode. It adds a simple device which dump the protocol data.
[jvrao@linux.vnet.ibm.com: Little-Endian to host format conversion][aneesh.kumar@linux.vnet.ibm.com: Multiple-mounts support]...