summaryrefslogtreecommitdiffstats
path: root/fsdev
Commit message (Collapse)AuthorAgeFilesLines
* fsdev: Fix potential memory leakStefan Weil2013-07-091-0/+2
| | | | | | | | | This leak was reported by cppcheck. Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: M. Mohan Kumar <mohan@in.ibm.com> Message-id: 1371376960-18192-1-git-send-email-sw@weilnetz.de Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* remove double semicolonsDong Xu Wang2013-05-121-2/+2
| | | | | Signed-off-by: Dong Xu Wang <wdongxu@linux.vnet.ibm.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
* virtfs-proxy-helper: Fix unchecked strdup() by conv. to g_strdup()Markus Armbruster2013-01-301-2/+2
| | | | | | Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
* build: remove extra-obj-yPaolo Bonzini2013-01-261-4/+4
| | | | | | | | | | extra-obj-y is somewhat complicated to understand. Replace it with a special CONFIG_ALL symbol that is defined only at toplevel. This limits the case of directories defining more than one *-obj-y target. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* qemu-option: move standard option definitions out of qemu-config.cPaolo Bonzini2013-01-124-15/+86
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* misc: move include files to include/qemu/Paolo Bonzini2012-12-195-10/+10
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* virtfs-proxy-helper: use setresuid and setresgidPaolo Bonzini2012-12-051-29/+64
| | | | | | | | | The setfsuid and setfsgid system calls are obscure and they complicate the error checking (that glibc's warn_unused_result "feature" forces us to do). Switch to the standard setresuid and setresgid functions. Signed-off-by: Paolo Bonzini <pbonini@redhat.com Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* qemu-fsdev-dummy.c: Include module.hEduardo Habkost2012-11-151-0/+1
| | | | | | | | | | | | module.h is where machine_init() is defined, but qemu-fsdev-dummy.c doesn't include it. The header is probably being included by accident because some other headers are including qemu-common.h, but those headers should eventually stop including qemu-common.h. Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> Signed-off-by: Andreas Färber <afaerber@suse.de>
* build: move fsdev/ objects to nested Makefile.objsPaolo Bonzini2012-06-071-0/+9
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* Replace Qemu by QEMU in user visible documentationStefan Weil2012-04-071-1/+1
| | | | | | | | The official spelling is QEMU. Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Andreas Färber <afaerber@suse.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* fsdev: Fix parameter parsing for proxy helperM. Mohan Kumar2012-01-301-2/+8
| | | | | | | This fixes a crash when using sockfd with proxy FsDriver Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Add new security model mapped-file.Aneesh Kumar K.V2012-01-191-4/+8
| | | | | | | | | | | | | This enable us to do passthrough equivalent security model on NFS directory. NFS server mostly do root squashing and don't support xattr. Hence we cannot use 'passthrough' or 'mapped' security model Also added "mapped-xattr" security to indicate earlier "mapped" security model Older name is still supported. POSIX rules regarding ctime update on chmod are not followed by this security model. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* virtfs-proxy-helper: Add missing printf format attributeStefan Weil2012-01-131-1/+1
| | | | | | | | Every function with printf like arguments must have it (see file HACKING), so add it. Signed-off-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
* virtfs-proxy-helper: Clean include filesStefan Weil2012-01-131-13/+2Star
| | | | | | | | | The common standard include files are already included via qemu-common.h, and for the socket related include files there is qemu_socket.h, so the code can be reduced by some lines. Signed-off-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
* virtfs-proxy-helper: Fix compilation on newer systemsStefan Weil2012-01-131-1/+1
| | | | | | | | | | | Include file attr/xattr.h is not available on "newer" systems (for example Fedora 12 or Debian Squeeze). See comments in qemu-xattr.h for more information. This file handles the system dependencies automatically. Signed-off-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
* hw/9pfs: Add support to use named socket for proxy FSM. Mohan Kumar2012-01-043-3/+89
| | | | | | | | | Add option to use named socket for communicating between proxy helper and qemu proxy FS. Access to socket can be given by using command line options -u and -g. Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: man page for proxy helperM. Mohan Kumar2012-01-041-0/+59
| | | | | Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Proxy getversionM. Mohan Kumar2012-01-041-0/+86
| | | | | | | Add proxy getversion to get generation number Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: xattr interfaces in proxy filesystem driverM. Mohan Kumar2012-01-041-0/+99
| | | | | | | Add xattr support for proxy FS Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: File ownership and othersM. Mohan Kumar2012-01-041-0/+83
| | | | | | | | Add file ownership interfaces like chmod/chown, utime update, rename, remove and truncating files for proxy FS Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Add stat/readlink/statfs for proxy FSM. Mohan Kumar2012-01-041-0/+182
| | | | | Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Create other filesystem objectsM. Mohan Kumar2012-01-041-6/+123
| | | | | | | | Add interfaces to create filesystem objects like directory, device nodes, symbolic links, links for proxy filesytem driver Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Open and create filesM. Mohan Kumar2012-01-041-3/+176
| | | | | | | Add interfaces to open and create files for proxy file system driver. Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: File system helper process for qemu 9p proxy FSM. Mohan Kumar2012-01-041-0/+300
| | | | | | | | | | | Provide root privilege access to QEMU 9p proxy filesystem using socket communication. Proxy helper is started by root user as: ~ # virtfs-proxy-helper -f|--fd <socket descriptor> -p|--path <path-to-share> Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Add new proxy filesystem driverM. Mohan Kumar2012-01-042-0/+2
| | | | | | | | | | | Add new proxy filesystem driver to add root privilege to qemu process. It needs a helper process to be started by root user. Following command line can be used to utilize proxy filesystem driver -virtfs proxy,id=<id>,mount_tag=<tag>,socket_fd=<socket-fd> Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Add validation to {un}marshal codeM. Mohan Kumar2012-01-042-71/+96
| | | | | Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Move pdu_marshal/unmarshal code to a seperate fileM. Mohan Kumar2012-01-042-0/+388
| | | | | | | | | Move p9 marshaling/unmarshaling code to a separate file so that proxy filesytem driver can use these calls. Also made marshaling code generic to accept "struct iovec" instead of V9fsPDU. Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Move opt validation to FsDriver callbackAneesh Kumar K.V2012-01-043-50/+19Star
| | | | | | | This remove all conditional code from common code path and make opt validation a FSDriver callback. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Use the correct signed type for different variablesAneesh Kumar K.V2011-12-211-1/+1
| | | | Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Use the correct file descriptor in Fsdriver CallbackAneesh Kumar K.V2011-12-041-2/+2
| | | | | | | | | Fsdriver callback that operate on file descriptor need to differentiate between directory fd and file fd. Based on the original patch from Sassan Panahinejad <sassan@sassan.me.uk> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Improve portability to older systemsAneesh Kumar K.V2011-12-041-0/+2
| | | | | | | | | | handle fs driver require a set of newly added syscalls. Don't Compile handle FS driver if those syscalls are not available. Instead of adding #ifdef for all those syscalls we check for open by handle syscall. If that is available then rest of the syscalls used by the driver should be available. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Add synthetic file system support using 9pAneesh Kumar K.V2011-10-312-0/+2
| | | | | | | | | | | | | | | | | | | | This patch create a synthetic file system with mount tag v_synth when -virtfs_synth command line option is specified in qemu. The synthetic file system can be mounted in guest using 9p using the below command line mount -t 9p -oversion=9p2000.L,trans=virtio v_synth <mountpint> Synthetic file system enabled different qemu subsystem to register callbacks for read and write events from guest. The subsystem can create directories and files in the synthetic file system as show in ex below qemu_v9fs_synth_mkdir(NULL, 0777, "test2", &node); qemu_v9fs_synth_add_file(node, 0777, "testfile", my_test_read, NULL, NULL); Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Abstract open state of fid to V9fsFidOpenStateAneesh Kumar K.V2011-10-311-13/+19
| | | | | | | | To implement synthetic file system in Qemu we may not really require file descriptor and Dir *. Make generic code use V9fsFidOpenState instead. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Read-only support for 9p exportM. Mohan Kumar2011-10-312-2/+9
| | | | | | | | | A new fsdev parameter "readonly" is introduced to control accessing 9p export. "readonly" can be used to specify the access type. By default "rw" access is given to 9p export. Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Handle Security model parsingM. Mohan Kumar2011-10-151-9/+17
| | | | | | | | Except local fs driver all other fs drivers (handle, synth) don't need security model. Update fsdev parameter parsing accordingly. Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Use export flag for indicating security modelAneesh Kumar K.V2011-10-153-22/+34
| | | | | | This helps to remove some of the structure members Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Rename fstype to fsdriver to make it consistent across VirtFS codeAneesh Kumar K.V2011-10-152-25/+25
| | | | Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Use export_flag for indicating whether fs driver use path names.Aneesh Kumar K.V2011-10-151-5/+2Star
| | | | | | This allows us to remove another member from the struct Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Add st_gen support in getattr replyHarsh Prateek Bora2011-10-151-0/+8
| | | | | | | | | | | | | This patch use file system specific ioctl for getting i_generation value. Not all file system support the ioctl. So we add an export specific extended operation and assign right callback for the file system that support i_generation ioctl ["M. Mohan Kumar" <mohan@in.ibm.com> we can do ioctl only for regular files and directories on the server] Signed-off-by: Harsh Prateek Bora <harsh@linux.vnet.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Add new virtfs option writeout=immediate skip host page cacheAneesh Kumar K.V2011-10-123-2/+13
| | | | | | | writeout=immediate implies the after pwritev we do a sync_file_range. Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Add handle based fs driverAneesh Kumar K.V2011-09-222-0/+2
| | | | Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Add fs driver specific details to fscontextAneesh Kumar K.V2011-09-221-0/+6
| | | | | | | | Add a new context flag PATHNAME_FSCONTEXT and indicate whether the fs driver track fid using path names. Also add a private pointer that help us to track fs driver specific values in there Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Add init callback to fs driverAneesh Kumar K.V2011-09-221-0/+2
| | | | | | This call back can be used to do fs driver specific initialization. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* hw/9pfs: Move fid pathname tracking to seperate data type.Aneesh Kumar K.V2011-09-221-18/+28
| | | | | | | This enables us to add handles to track fids later. The V9fsPath added is similar to V9fsString except that the size include the NULL byte also. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* use readdir_r instead of readdir for reentrancyHarsh Prateek Bora2011-08-221-1/+1
| | | | | Signed-off-by: Harsh Prateek Bora <harsh@linux.vnet.ibm.com> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
* Use glib memory allocation and free functionsAnthony Liguori2011-08-211-4/+4
| | | | | | qemu_malloc/qemu_free no longer exist after this commit. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* fsdev: Fix archs that dont use fsdevEdgar E. Iglesias2011-06-101-0/+8
| | | | | | Fix provided by: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
* [virtio-9p] Make rpath thread safeVenkateswararao Jujjuri (JV)2011-06-011-7/+0Star
| | | | | | | | Current rpath inline function is heavily used in all system calls. This function has a static buffer making it a non-thread safe function. This patch introduces new thread-safe routine and makes use of it. Signed-off-by: Venkateswararao Jujjuri "<jvrao@linux.vnet.ibm.com>
* virtio-9p: Don't link to 9p if virtio is not enabledAneesh Kumar K.V2011-06-011-0/+20
| | | | | | | | If virtio is not enabled then we should not pull in virtfs files Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Signed-off-by: Venkateswararao Jujjuri (JV) <jvrao@linux.vnet.ibm.com>
* virtio-9p: move 9p files aroundAneesh Kumar K.V2011-04-272-1/+108
| | | | | | | | Now that we start adding more files related to 9pfs it make sense to move them to a separate directory Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Signed-off-by: Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com>