mirror of https://github.com/xemu-project/xemu.git
9pfs: some fixes
* Fix meson build config for Xen. * Code style fixes. -----BEGIN PGP SIGNATURE----- iQJLBAABCgA1FiEEltjREM96+AhPiFkBNMK1h2Wkc5UFAl+lE5MXHHFlbXVfb3Nz QGNydWRlYnl0ZS5jb20ACgkQNMK1h2Wkc5U0xQ//f3e9KDE2rHIPRBi20KnRFzpn RUbVtSMyw9DcHRMyV8oxByKAyXqe8Uj0aPu/gRy24z46C1CMKuq/W4XrgFFLGcTV t52RRbVRS27TH/jRENxcGeqdN8imQGlGgpcjy8iJiaJZCiT8TpJ5KT0/zy2EgiAd zjyac1Sxvhz0JncxU7wsBP3N8j4s7AMzKOHNaxIuvnQtMzMzB3c8FR+3i8HaUguR +AnnmUcn7AgvbtIyppo72EGYzLSrb7lnwbk9nYiG8XruO0r8LEmjfIM7eGLkmwbo GLc7aPdik0vwdwAAX4GAzJGHpXcKuIgZum2m3di/jmB/gKeVSTTKLHgkkwr67Mxk sacrJ1fysOT2NXrO/Fta+s9i2LA5wcrvR/BKjyknnowmBCpah8FQGvigzBU75ni1 EvDuOi7zVCum6B34HJqxV1852vHplJY2vrfx/Z7REVCUnkmdy4njuDXz0rd8iZMh EX6lYA+/6myI6KSAuldPmWHZSVlMjBz+1BWooSbdKcGunMct4dmCMGPpd4q2n7gj 70GydNtpT7Ek85UGuMn2ZLRyL+SUxIB4VAMvsrJyYC69W2BzmAMmsLJWFzg865PN EqtamMP7EduzTTOm99zGn/fmU8nomJ4JHLGQc5G2rtKkLp/JZkuEVnCFVzNXmx/j rJAu2rNQofU4OWoKlos= =TwzC -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/cschoenebeck/tags/pull-9p-20201106' into staging 9pfs: some fixes * Fix meson build config for Xen. * Code style fixes. # gpg: Signature made Fri 06 Nov 2020 09:12:51 GMT # gpg: using RSA key 96D8D110CF7AF8084F88590134C2B58765A47395 # gpg: issuer "qemu_oss@crudebyte.com" # gpg: Good signature from "Christian Schoenebeck <qemu_oss@crudebyte.com>" [unknown] # gpg: WARNING: This key is not certified with a trusted signature! # gpg: There is no indication that the signature belongs to the owner. # Primary key fingerprint: ECAB 1A45 4014 1413 BA38 4926 30DB 47C3 A012 D5F4 # Subkey fingerprint: 96D8 D110 CF7A F808 4F88 5901 34C2 B587 65A4 7395 * remotes/cschoenebeck/tags/pull-9p-20201106: hw/9pfs: Fix Kconfig dependency problem between 9pfs and Xen hw/9pfs : add space before the open parenthesis '(' hw/9pfs : open brace '{' following struct go on the same line hw/9pfs : add spaces around operator Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
commit
a47c284a7c
|
@ -162,13 +162,13 @@ static void local_mapped_file_attr(int dirfd, const char *name,
|
|||
memset(buf, 0, ATTR_MAX);
|
||||
while (fgets(buf, ATTR_MAX, fp)) {
|
||||
if (!strncmp(buf, "virtfs.uid", 10)) {
|
||||
stbuf->st_uid = atoi(buf+11);
|
||||
stbuf->st_uid = atoi(buf + 11);
|
||||
} else if (!strncmp(buf, "virtfs.gid", 10)) {
|
||||
stbuf->st_gid = atoi(buf+11);
|
||||
stbuf->st_gid = atoi(buf + 11);
|
||||
} else if (!strncmp(buf, "virtfs.mode", 11)) {
|
||||
stbuf->st_mode = atoi(buf+12);
|
||||
stbuf->st_mode = atoi(buf + 12);
|
||||
} else if (!strncmp(buf, "virtfs.rdev", 11)) {
|
||||
stbuf->st_rdev = atoi(buf+12);
|
||||
stbuf->st_rdev = atoi(buf + 12);
|
||||
}
|
||||
memset(buf, 0, ATTR_MAX);
|
||||
}
|
||||
|
@ -823,7 +823,7 @@ static int local_open2(FsContext *fs_ctx, V9fsPath *dir_path, const char *name,
|
|||
if (fd == -1) {
|
||||
goto out;
|
||||
}
|
||||
credp->fc_mode = credp->fc_mode|S_IFREG;
|
||||
credp->fc_mode = credp->fc_mode | S_IFREG;
|
||||
if (fs_ctx->export_flags & V9FS_SM_MAPPED) {
|
||||
/* Set cleint credentials in xattr */
|
||||
err = local_set_xattrat(dirfd, name, credp);
|
||||
|
|
16
hw/9pfs/9p.c
16
hw/9pfs/9p.c
|
@ -1091,7 +1091,7 @@ static mode_t v9mode_to_mode(uint32_t mode, V9fsString *extension)
|
|||
}
|
||||
}
|
||||
|
||||
if (!(ret&~0777)) {
|
||||
if (!(ret & ~0777)) {
|
||||
ret |= S_IFREG;
|
||||
}
|
||||
|
||||
|
@ -2776,7 +2776,7 @@ static void coroutine_fn v9fs_create(void *opaque)
|
|||
v9fs_path_unlock(s);
|
||||
} else {
|
||||
err = v9fs_co_open2(pdu, fidp, &name, -1,
|
||||
omode_to_uflags(mode)|O_CREAT, perm, &stbuf);
|
||||
omode_to_uflags(mode) | O_CREAT, perm, &stbuf);
|
||||
if (err < 0) {
|
||||
goto out;
|
||||
}
|
||||
|
@ -3428,7 +3428,7 @@ static int v9fs_fill_statfs(V9fsState *s, V9fsPDU *pdu, struct statfs *stbuf)
|
|||
* compute bsize factor based on host file system block size
|
||||
* and client msize
|
||||
*/
|
||||
bsize_factor = (s->msize - P9_IOHDRSZ)/stbuf->f_bsize;
|
||||
bsize_factor = (s->msize - P9_IOHDRSZ) / stbuf->f_bsize;
|
||||
if (!bsize_factor) {
|
||||
bsize_factor = 1;
|
||||
}
|
||||
|
@ -3440,9 +3440,9 @@ static int v9fs_fill_statfs(V9fsState *s, V9fsPDU *pdu, struct statfs *stbuf)
|
|||
* adjust(divide) the number of blocks, free blocks and available
|
||||
* blocks by bsize factor
|
||||
*/
|
||||
f_blocks = stbuf->f_blocks/bsize_factor;
|
||||
f_bfree = stbuf->f_bfree/bsize_factor;
|
||||
f_bavail = stbuf->f_bavail/bsize_factor;
|
||||
f_blocks = stbuf->f_blocks / bsize_factor;
|
||||
f_bfree = stbuf->f_bfree / bsize_factor;
|
||||
f_bavail = stbuf->f_bavail / bsize_factor;
|
||||
f_files = stbuf->f_files;
|
||||
f_ffree = stbuf->f_ffree;
|
||||
fsid_val = (unsigned int) stbuf->f_fsid.__val[0] |
|
||||
|
@ -4185,6 +4185,6 @@ static void __attribute__((__constructor__)) v9fs_set_fd_limit(void)
|
|||
error_report("Failed to get the resource limit");
|
||||
exit(1);
|
||||
}
|
||||
open_fd_hw = rlim.rlim_cur - MIN(400, rlim.rlim_cur/3);
|
||||
open_fd_rc = rlim.rlim_cur/2;
|
||||
open_fd_hw = rlim.rlim_cur - MIN(400, rlim.rlim_cur / 3);
|
||||
open_fd_rc = rlim.rlim_cur / 2;
|
||||
}
|
||||
|
|
|
@ -143,8 +143,7 @@ typedef struct {
|
|||
*/
|
||||
QEMU_BUILD_BUG_ON(sizeof(P9MsgHeader) != 7);
|
||||
|
||||
struct V9fsPDU
|
||||
{
|
||||
struct V9fsPDU {
|
||||
uint32_t size;
|
||||
uint16_t tag;
|
||||
uint8_t id;
|
||||
|
@ -270,8 +269,7 @@ union V9fsFidOpenState {
|
|||
void *private;
|
||||
};
|
||||
|
||||
struct V9fsFidState
|
||||
{
|
||||
struct V9fsFidState {
|
||||
int fid_type;
|
||||
int32_t fid;
|
||||
V9fsPath path;
|
||||
|
@ -338,8 +336,7 @@ typedef struct {
|
|||
uint64_t path;
|
||||
} QpfEntry;
|
||||
|
||||
struct V9fsState
|
||||
{
|
||||
struct V9fsState {
|
||||
QLIST_HEAD(, V9fsPDU) free_list;
|
||||
QLIST_HEAD(, V9fsPDU) active_list;
|
||||
V9fsFidState *fid_list;
|
||||
|
|
|
@ -2,12 +2,8 @@ config FSDEV_9P
|
|||
bool
|
||||
depends on VIRTFS
|
||||
|
||||
config 9PFS
|
||||
bool
|
||||
|
||||
config VIRTIO_9P
|
||||
bool
|
||||
default y
|
||||
depends on VIRTFS && VIRTIO
|
||||
select FSDEV_9P
|
||||
select 9PFS
|
||||
|
|
|
@ -23,7 +23,7 @@ static ssize_t __readlink(V9fsState *s, V9fsPath *path, V9fsString *buf)
|
|||
ssize_t len, maxlen = PATH_MAX;
|
||||
|
||||
buf->data = g_malloc(PATH_MAX);
|
||||
for(;;) {
|
||||
for (;;) {
|
||||
len = s->ops->readlink(&s->ctx, path, buf->data, maxlen);
|
||||
if (len < 0) {
|
||||
g_free(buf->data);
|
||||
|
|
|
@ -15,6 +15,6 @@ fs_ss.add(files(
|
|||
'coxattr.c',
|
||||
))
|
||||
fs_ss.add(when: 'CONFIG_XEN', if_true: files('xen-9p-backend.c'))
|
||||
softmmu_ss.add_all(when: 'CONFIG_9PFS', if_true: fs_ss)
|
||||
softmmu_ss.add_all(when: 'CONFIG_FSDEV_9P', if_true: fs_ss)
|
||||
|
||||
specific_ss.add(when: 'CONFIG_VIRTIO_9P', if_true: files('virtio-9p-device.c'))
|
||||
|
|
Loading…
Reference in New Issue