lock */ +out: + argsize = remaining; + req->in.args[i].size); Vivek has presented block IO controller at LSF/MM, + kfree(names); +{ + Title. + if (fs->num_queues == 0) + __func__); [PATCH 09/52] fuse: process requests queues, [PATCH 00/52] [RFC] virtio-fs: shared file system for virtual machines, [PATCH 01/52] fuse: add skeleton virtio_fs.ko module, [PATCH 02/52] fuse: add probe/remove virtio driver, [PATCH 03/52] fuse: rely on mutex_unlock() barrier instead of fput(), [PATCH 04/52] fuse: extract fuse_fill_super_common(), [PATCH 05/52] virtio_fs: get mount working, [PATCH 06/52] fuse: export fuse_end_request(), [PATCH 07/52] fuse: export fuse_len_args(), [PATCH 08/52] fuse: add fuse_iqueue_ops callbacks, [PATCH 10/52] fuse: export fuse_get_unique(), [PATCH 11/52] fuse: implement FUSE_FORGET for virtio-fs, [PATCH 12/52] virtio_fs: Set up dax_device, [PATCH 13/52] dax: remove block device dependencies, [PATCH 14/52] fuse: add fuse_conn->dax_dev field, [PATCH 15/52] fuse: map virtio_fs DAX window BAR, [PATCH 16/52] virtio-fs: Add VIRTIO_PCI_CAP_SHARED_MEMORY_CFG and utility to find them, [PATCH] virtio-fs: fix semicolon.cocci warnings, [PATCH 17/52] virtio-fs: Retrieve shm capabilities for cache, [PATCH 18/52] virtio-fs: Map cache using the values from the capabilities, [PATCH] virtio-fs: fix multiple tag support, [PATCH 19/52] virito-fs: Make dax optional, [PATCH 20/52] Limit number of pages returned by direct_access(), [PATCH 21/52] fuse: Introduce fuse_dax_mapping, [PATCH 22/52] Create a list of free memory ranges, [PATCH 23/52] fuse: simplify fuse_fill_super_common() calling, [PATCH 24/52] fuse: Introduce setupmapping/removemapping commands, [PATCH 25/52] Introduce interval tree basic data structures, [PATCH 26/52] fuse: Implement basic DAX read/write support commands, [PATCH 27/52] fuse: Maintain a list of busy elements, [PATCH 28/52] Do fallocate() to grow file before mapping for file growing writes, [PATCH 30/52] fuse: delete dentry if timeout is zero, [PATCH 31/52] dax: Pass dax_dev to dax_writeback_mapping_range(), [PATCH 32/52] fuse: Define dax address space operations, [PATCH 33/52] fuse, dax: Take ->i_mmap_sem lock during dax page fault, [PATCH 34/52] fuse: Add logic to free up a memory range, [PATCH 35/52] fuse: Add logic to do direct reclaim of memory, [PATCH 36/52] fuse: Kick worker when free memory drops below 20% of total ranges, [PATCH 37/52] fuse: multiplex cached/direct_io/dax file operations, [PATCH 38/52] Dispatch FORGET requests later instead of dropping them, [PATCH 39/52] Release file in process context, [PATCH 40/52] fuse: Do not block on inode lock while freeing memory range, [PATCH 41/52] fuse: Reschedule dax free work if too many EAGAIN attempts, [PATCH 42/52] fuse: Wait for memory ranges to become free, [PATCH 43/52] fuse: Take inode lock for dax inode truncation, [PATCH 44/52] fuse: Clear setuid bit even in direct I/O path, [PATCH 45/52] virtio: Free fuse devices on umount, [PATCH 46/52] virtio-fs: Retrieve shm capabilities for version table, [PATCH 47/52] virtio-fs: Map using the values from the capabilities, [PATCH 48/52] virtio-fs: pass version table pointer to fuse, [PATCH 49/52] fuse: don't crash if version table is NULL, [PATCH 50/52] fuse: add shared version support (virtio-fs only), [PATCH 51/52] fuse: shared version cleanups, [PATCH 52/52] fuse: fix fuse_permission() for the default_permissions case, https://en.wikipedia.org/wiki/Posting_style#Interleaved_style, https://kernel.org/pub/software/scm/git/docs/git-send-email.html, nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel, https://public-inbox.org/public-inbox.git. + }, @@ -109,6 +129,210 @@ static int virtio_fs_read_tag(struct virtio_device *vdev, struct virtio_fs *fs), +static void virtio_fs_notifications_done(struct virtqueue *vq) +static void virtio_fs_vq_done(struct virtqueue *vq) Manager. + unsigned total_sgs = 1 /* fuse_in_header */; + in_sgs += sg_init_fuse_args(&sg[out_sgs + in_sgs], req, VK Goyal. + BUG_ON(out_sgs + in_sgs != total_sgs); + req = list_last_entry(&fiq->pending, struct fuse_req, list); +static void virtio_fs_wake_interrupt_and_unlock(struct fuse_iqueue *fiq) + /* TODO check unique */ +, @@ -71,18 +92,17 @@ static void virtio_fs_free_devs(struct virtio_fs *fs). + + done_work); + unsigned remaining; + kfree(req->argbuf); +{ + __func__, ret); + Hometown's. + He is a member of kernel storage team and has worked in various areas like Overlayfs SELinux support, docker storage, block cgroup controller, IO scheduler, kexec/kdump and secureboot. + Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA, USA. + /* Request elements */ + for (i = 0; i < total_sgs; i++) + fs->vqs = devm_kcalloc(&vdev->dev, fs->nvqs, sizeof(fs->vqs[0]), Idea is that this code runs after a crash and it runs in minimal environment. + void *argbuf, + spin_unlock(&fiq->waitq.lock); - fs->fud[i] = fuse_dev_alloc(fc); + + offset += req->in.args[i].size; +static unsigned sg_init_fuse_args(struct scatterlist *sg, Vivek Goyal's articles on arXiv [1] arXiv:1901.09702 [pdf, other] Title: Reduced damage in electron microscopy by using interaction-free measurement and conditional re-illumination Authors: Akshay Agarwal, Karl K. Berggren, Vivek Goyal. + fsvq->fud = fuse_dev_alloc(fc); + struct fuse_pqueue *fpq = &fsvq->fud->pq; + unsigned num_queues; /* number of request queues */, +static inline struct virtio_fs_vq *vq_to_fsvq(struct virtqueue *vq) + unsigned nvqs; /* number of virtqueues */ 2015-2018. Co-Chair . +/* Return the number of scatter-gather list elements required */ + /* Reply elements */ + + + err = fuse_fill_super_common(sb, &d, &virtio_fs_fiq_ops, fs, +, +out_vqs: + + unsigned len; + + len = fuse_len_args(numargs - argpages, args); Idea is that this code runs after a crash and it runs in minimal environment. +{ + + spin_lock(&fpq->lock); + offset += argsize; + unsigned out_sgs = 0; + struct virtio_fs_vq *fsvq = &fs->vqs[i]; - for (i = 0; i < fs->num_queues; i++) { + const char **names; +{ + - struct fuse_dev *fud = fs->fud[i]; - if (fud) + return; + + ret = virtio_find_vqs(vdev, fs->nvqs, vqs, callbacks, names, NULL); +} + - if (fs->num_queues == 0) { + memcpy(req->out.args[i].value, req->argbuf + offset, argsize); + + From: Vivek Goyal To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: vgoyal@redhat.com, miklos@szeredi.hu, stefanha@redhat.com, dgilbert@redhat.com, sweil@redhat.com, swhiteho@redhat.com Subject: [PATCH 00/52] [RFC] virtio-fs: shared file system for virtual machines Date: Mon, 10 Dec 2018 12:12:26 -0500 Message-ID: … He is currently Professor of Electrical and Computer Engineering at Boston University (BU). - if (!fs->fud) { + - }, + fuse_dev_free(fsvq->fud); /* TODO need to quiesce/end_requests/decrement dev_count */ + + /* matches barrier in request_wait_answer() */ + /* Bring the device online in case the filesystem is mounted and Vivek Goyal <> Subject [PATCH 11/15] purgatory: Core purgatory functionality: Date: Thu, 26 Jun 2014 16:33:40 -0400 : Create a stand alone relocatable object purgatory which runs between two kernels. +} + kfree(sgs); This name, concept and some code has been taken from kexec-tools. + __func__, req->in.h.opcode, req->in.h.unique, req->in.h.nodeid, + unsigned i; + for (i = 0; i < num_in; i++) { + for (i = 0; i < fs->nvqs; i++) + struct scatterlist *stack_sgs[6 /* requests need at least 4 elements */]; Actual results: Expected results: Additional info: --- Additional comment from Vivek Goyal on 2016-11-01 17:14:04 EDT --- Hi Lokesh, Could you please take care of changing spec file for docker-storage-setup. + return total_sgs; + kfree(req->argbuf); + callbacks[1] = virtio_fs_vq_done; + total_sgs += 1; + + + unsigned num_in; + fs->nvqs = 2 + fs->num_queues; +__releases(fiq->waitq.lock) + notify = virtqueue_kick_prepare(vq); +/* Free virtqueues (device must already be reset) */ + struct fuse_req *req; He was named Fellow of the Institute of Electrical and Electronics Engineers (IEEE) in 2014 for contributions to information representations and their applications in acquisition, communication, and estimation. - unsigned int num_queues; + struct virtio_fs_vq *vqs; Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,USA. +static void virtio_fs_notifications_done_work(struct work_struct *work) + req->page_descs, Sort by citations Sort by year Sort by title. + + if (total_sgs > ARRAY_SIZE(stack_sgs)) { From: Vivek Goyal To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: vgoyal@redhat.com, miklos@szeredi.hu, stefanha@redhat.com, dgilbert@redhat.com, sweil@redhat.com, swhiteho@redhat.com Subject: [PATCH 09/52] fuse: process requests queues Date: Mon, 10 Dec 2018 12:12:35 -0500 Message-ID: <20181210171318.16998-10 … C 10 8 docker-mount. + } + + + + schedule_work(&fsvq->done_work); + return -EINVAL; + req->in.numargs, req->in.argpages, + + num_in = req->in.numargs - req->in.argpages; + } + + fpq = vq_to_fpq(vq); + + return; - Vitaly Kuznetsov & Vivek Goyal, Red Hat KVM Theater . 2020-2020. + vdev->config->del_vqs(vdev); + } + callbacks = kmalloc_array(fs->nvqs, sizeof(callbacks[0]), GFP_KERNEL); +/* Work function for request completion */ + len = fuse_len_args(num_in, (struct fuse_arg *)req->in.args) + + remaining = req->out.h.len - sizeof(req->out.h); +{ +/* Copy args out of and free req->argbuf */ +} + if (i != req->out.numargs - 1) +} Vivek has 8 jobs listed on their profile. + total_sgs += req->num_pages; + /* TODO */ + bool argpages, +/* Add pages to scatter-gather list and return number of elements used */ View Vivek Goyal’s profile on LinkedIn, the world's largest professional community. + */ + struct fuse_pqueue *fpq; + names = kmalloc_array(fs->nvqs, sizeof(names[0]), GFP_KERNEL); Vivek K Goyal. + struct virtio_fs *fs) + if (req->out.argpages) He is a member of kernel storage team and has worked in various areaslike Overlayfs SELinux support, docker storage, block cgroup controller, IOscheduler, kexec/kdump and secureboot.Vivek has presented... Miklos Szeredi is a Linux kernel hacker working for Red Hat. +static void virtio_fs_requests_done_work(struct work_struct *work) + + + if (notify) + int ret; + if (len) + fuse_request_end(fc, req); + offset = fuse_len_args(num_in, (struct fuse_arg *)req->in.args); + + snprintf(fs->vqs[1].name, sizeof(fs->vqs[1].name), "hiprio"); +} + /* TODO fuse_len_args(out) against oh.len */ + fuse_len_args(num_out, req->out.args); + struct virtio_fs_vq *fsvq = container_of(work, struct virtio_fs_vq, + ret = virtqueue_add_sgs(vq, sgs, out_sgs, in_sgs, req, GFP_ATOMIC); Filter By Date KVM Forum 2020 Oct 28-30, 2020. + } - goto err_fud; Red Hat Crash Utility Thread Index [PATCH] foreach filter on state. + dev_dbg(&vq->vdev->dev, "%s %s\n", __func__, fsvq->name); --- Additional comment from Vivek Goyal on 2016-11-01 17:16:23 EDT --- Lokesh, we will require similar changes for fedora package too. + + + +const static struct fuse_iqueue_ops virtio_fs_fiq_ops = { + + do { + req->argbuf, &argbuf_used); + This name, concept and some code has been taken from kexec-tools. + + if (ret < 0) … + sgs = kmalloc_array(total_sgs, sizeof(sgs[0]), GFP_ATOMIC); Red Hat Inc. Overview Repositories Projects Popular repositories misc. +} +} + + unsigned total_sgs; + spin_unlock(&fpq->lock); + names[i] = fs->vqs[i].name; Accessibility consultant and journalist Vivek Gohil is a speaker at this year's Red Bull Basement. + page_descs[i].offset); + .wake_pending_and_unlock = virtio_fs_wake_pending_and_unlock, + return; + sg_set_page(&sg[i], pages[i], +} + clear_bit(FR_PENDING, &req->flags); Red Hat Product Errata RHSA-2011:1532: normal SHIPPED_LIVE Moderate: kexec-tools security, bug fix, and enhancement update 2011-12-06 01:01:52 UTC Description Vivek Goyal 2011-07-25 15:32:34 UTC Description of problem: Using nr_cpus=1 for kdump kenrel saves memory required in second kernel. + printk(KERN_ERR "%s: disconnected\n", __func__); + req->in.args[i].value, + + /* TODO handle full virtqueue */ + fpq = &fs->vqs[queue_id].fud->pq; + struct virtio_fs *fs = vq->vdev->priv; + unsigned *len_used) This name, concept and some code has been taken from kexec-tools. + sg_init_table(&sg[i], 1); + req->out.h.error = -ENODEV; +{ + struct page **pages, + for (i = 0; i < fs->nvqs; i++) { +struct virtio_fs_vq { - virtio_cread(vdev, struct virtio_fs_config, num_queues, + fs->vqs[i].vq = vqs[i]; - if (!fs->fud[i]) {, + for (i = 0; i < fs->nvqs; i++) { +. + if (ret < 0) { + if (test_bit(FR_ISREPLY, &req->flags)) { Timezone KVM Forum 2020. + (struct fuse_arg *)req->in.args, + + for (i = 0; i < num_out; i++) { + kfree(callbacks); + + return total_sgs; + struct virtqueue *vq = fsvq->vq; + /* Does the sglist fit on the stack? +{ + /* Collect completed requests off the virtqueue */ Long Live Asynchronous Page Fault! + goto out; + LIST_HEAD(reqs); +{ + .wake_interrupt_and_unlock = virtio_fs_wake_interrupt_and_unlock, + printk(KERN_ERR "%s: virtio_fs_enqueue_req failed %d\n", */ There are 400+ professionals named "Vivek Goyal", who use LinkedIn to exchange information, ideas, and opportunities. +static unsigned sg_count_fuse_req(struct fuse_req *req) + + (void **)&fs->vqs[2].fud); - for (i = 1; i < fs->num_queues; i++) { + /* End requests */ + snprintf(fs->vqs[i].name, sizeof(fs->vqs[i].name), + if (!test_bit(FR_ISREPLY, &req->flags)) +{ Vivek Goyal. + ret = virtio_fs_enqueue_req(fs->vqs[queue_id].vq, req); + sg_init_one(&sg[out_sgs + in_sgs++], +, @@ -148,6 +381,7 @@ static void virtio_fs_remove(struct virtio_device *vdev), @@ -190,6 +424,234 @@ static struct virtio_driver virtio_fs_driver = {, +static void virtio_fs_wake_forget_and_unlock(struct fuse_iqueue *fiq) Red Hat Product Errata RHSA-2011:0542: normal SHIPPED_LIVE Important: Red Hat Enterprise Linux 6.1 kernel security, bug fix and enhancement update 2011-05-19 11:58:07 UTC Description Vivek Goyal 2011-03-01 22:29:14 UTC Description of problem: Currently throttle logic uses kblockd workqueue to queue up throttle work. + names[0] = fs->vqs[0].name; + struct virtio_fs *fs; + } + 0 Issues ; Pull Requests ; Issues for vgoyal Open Closed All. + &req->out.h, sizeof(req->out.h)); + copy_args_from_argbuf(req); + if (argpages) + struct fuse_dev *fud; */ - err = -ENOMEM; + void *argbuf; +/* Per-virtqueue state */ + /* Initialize the requests virtqueues */ + + if (req->out.numargs - req->out.argpages) +}; Issues Created issues #50 … + req->out.argpages, + for (i = 2; i < fs->nvqs; i++) { +static void virtio_fs_wake_pending_and_unlock(struct fuse_iqueue *fiq) + + if (sgs != stack_sgs) { + struct scatterlist **sgs = stack_sgs; + struct virtio_fs *fs) See the complete profile on LinkedIn and discover Vivek’s connections and jobs at similar companies. + } + fs = fiq->priv; - fuse_dev_free(fud); /* TODO need to quiesce/end_requests/decrement dev_count */ + return -ENOMEM; + goto out; + + req->argbuf = NULL; + struct virtio_fs_vq *fsvq = vq_to_fsvq(vq); + + unsigned num_in; + total_sgs += 1; From: Vivek Goyal To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: vgoyal@redhat.com, miklos@szeredi.hu, stefanha@redhat.com, dgilbert@redhat.com, sweil@redhat.com, swhiteho@redhat.com Subject: [PATCH 33/52] fuse, dax: Take ->i_mmap_sem lock during dax page fault Date: Mon, 10 Dec 2018 12:12:59 -0500 Message-ID: … + unsigned num_out; + num_out = req->out.numargs - req->out.argpages; + MBA studies - Wharton - Finance and Business Analytics. + req->out.h.error = ret; Comment 8 Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed. + req->argbuf = kmalloc(len, GFP_ATOMIC); + unsigned numargs, + goto out; View Vivek Goyal's full profile. + struct work_struct done_work; + unsigned in_sgs = 0; Start using that for x86 and x86_64. + &fs->num_queues); + vqs = kmalloc_array(fs->nvqs, sizeof(vqs[0]), GFP_KERNEL); Vivek Goyal <> Subject: Re: kdump info request: On Mon, Oct 01, 2007 at 09:31:45AM -0700, Randy Dunlap wrote: > On Mon, 1 Oct 2007 09:35:04 -0600 Mukker, Atul wrote: > > > Thanks for the information and the effort. Europe/London. + unsigned num_out; + + + /* TODO */ + if (ret < 0), + /* TODO vq affinity */ + if (req->out.argvar) +static void virtio_fs_hiprio_done(struct virtqueue *vq) + Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,USA. + } Education. + vdev->config->reset(vdev); + + struct fuse_conn *fc = fsvq->fud->fc; + struct scatterlist stack_sg[ARRAY_SIZE(stack_sgs)]; +static int virtio_fs_setup_vqs(struct virtio_device *vdev, + + } + goto out; + if (ret < 0 && req->argbuf) { + sg_init_one(&sg[out_sgs++], &req->in.h, sizeof(req->in.h)); + dev_dbg(&vq->vdev->dev, "%s\n", __func__); Verified email at bu.edu - Homepage. It can lead to system hang when throttling is being used. +} ____cacheline_aligned_in_smp; +/* Allocate and copy args into req->argbuf */ + unsigned i; + total_sgs += sg_init_fuse_pages(&sg[total_sgs], + virtqueue_disable_cb(vq); + struct virtio_fs_vq *fsvq = &fs->vqs[i]; - err = fuse_fill_super_common(sb, &d, (void **)&fs->fud[0]); + /* TODO this sends FUSE_INIT and could cause hiprio or notifications + list_del_init(&req->list); +static void virtio_fs_cleanup_vqs(struct virtio_device *vdev, + return &fs->vqs[vq->index]; + unsigned argbuf_used = 0; + /* TODO check for FR_INTERRUPTED? + memcpy(req->argbuf + offset, + clear_bit(FR_SENT, &req->flags); + list_del_init(&req->list); + + + req->num_pages); Vivek K Goyal is an American engineering professor, author, and inventor. + unsigned i; +{ + if (!vqs || !callbacks || !names) { + unsigned offset; + return i; + virtio_cread(vdev, struct virtio_fs_config, num_queues, + - }. + + goto out; + list_for_each_entry_safe(req, next, &reqs, list) { + num_in = req->in.numargs - req->in.argpages; + virtio_fs_cleanup_vqs(vdev, fs); +/* Virtqueue interrupt handler */ + ret = copy_args_to_argbuf(req); From: Lei Wen; Re: [PATCH] display ST when using ps -l. From: Dave Anderson; Re: [PATCH] display ST when using ps -l. From: qiaonuohan; Re: How to use scripts in crash? +, - struct list_head list; /* on virtio_fs_instances */, + struct list_head list; /* on virtio_fs_instances */. +{ + + + if (!req->argbuf) + sg = kmalloc_array(total_sgs, sizeof(sg[0]), GFP_ATOMIC); + fc = fs->vqs[queue_id].fud->fc; + if (!fsvq->fud) {. + /* TODO populate notifications vq */ + if (ret < 0) { + req->out.args, req->out.numargs, + Wharton Investment Management Club. docker-storage-setup tries to extend lv with no extents and fails causing docker to fail. + total_sgs += req->num_pages; + i == req->out.numargs - 1 && +static inline struct fuse_pqueue *vq_to_fpq(struct virtqueue *vq) + From: Max Matveev; Re: How to use scripts in crash? + * requests need to be sent before we return. + ret = -ENOMEM; Long Live Asynchronous Page Fault! + INIT_WORK(&fs->vqs[0].done_work, virtio_fs_notifications_done_work); + dev_dbg(&vq->vdev->dev, "%s\n", __func__); +{ Lokesh, we probably need to fix it. + num_out = req->out.numargs - req->out.argpages; + + * virtqueue races since they haven't been set up yet! + if (req->out.argvar && From: Vivek Goyal To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: vgoyal@redhat.com, miklos@szeredi.hu, stefanha@redhat.com, dgilbert@redhat.com, sweil@redhat.com, swhiteho@redhat.com Subject: [PATCH 50/52] fuse: add shared version support (virtio-fs only) Date: Mon, 10 Dec 2018 12:13:16 -0500 Message-ID: … + struct virtqueue **vqs; + + while ((req = virtqueue_get_buf(vq, &len)) != NULL) + argsize > remaining) { + View Colleagues. + kfree(sg); + list_add_tail(&req->list, fpq->processing); + fsvq->fud = NULL; + struct fuse_req *req; + + int ret; +static unsigned sg_init_fuse_pages(struct scatterlist *sg, + /* Store the actual size of the variable-length arg */ + + req->argbuf + argbuf_used, NULL); + unsigned queue_id = 2; /* TODO multiqueue */ + + req->in.h.len, fuse_len_args(req->out.numargs, req->out.args)); + page_descs[i].length, Articles Cited by Co-authors. + set_bit(FR_SENT, &req->flags); + + if (!fpq->connected) { +{ Cited by. + sgs[i] = &sg[i]; + GFP_KERNEL); + list_move_tail(&req->list, &reqs); + dev_dbg(&fs->vqs[queue_id].vq->vdev->dev, + spin_unlock(&fiq->waitq.lock); @@ -220,30 +682,35 @@ static int virtio_fs_fill_super(struct super_block *sb, void *data, - fs->fud = kcalloc(fs->num_queues, sizeof(fs->fud[0]), GFP_KERNEL); + for (i = 0; i < num_pages; i++) { +} + unsigned i; +} + out_sgs += sg_init_fuse_args(&sg[out_sgs], req, +} MANGALAM CEMENT LTD (Birla Uttam ) 2015-2018. + virtqueue_notify(vq); + if (len_used) + spin_unlock(&fiq->waitq.lock); + + spin_lock(&fpq->lock); Sort . +} + return 0; + "requests.%u", i - 2); + } + req->argbuf = NULL; Description of problem: docker-storage-setup causes docker to fail when auto-extend is set. + total_sgs += 1 /* fuse_out_header */; Here, he explains what the industry can do to make … + spin_unlock(&fpq->lock); + } - struct fuse_dev **fud; /* 1:1 mapping with request queues */ + /* TODO put request onto fpq->io list? An electronics and communication engineer from Institute of technology, B.H.U, Varanasi, India, he has spent time in developing and maintaining Kexec/Kdump and relocatable kernel for x86 arch. + callbacks[i] = virtio_fs_vq_done; + View the profiles of professionals named "Vivek Goyal" on LinkedIn. + virtio_device_ready(vdev); +out: Vivek Goyal • Joined 4 years ago. View Vivek Goyal’s profile on LinkedIn, the world’s largest professional community. + Cited by. +, @@ -119,23 +343,32 @@ static int virtio_fs_probe(struct virtio_device *vdev). Vivek Goyal <> Subject [PATCH 09/13] purgatory: Core purgatory functionality: Date: Tue, 3 Jun 2014 09:06:58 -0400: Create a stand alone relocatable object purgatory which runs between two kernels. + 0 Starred . + sg_init_one(&sg[total_sgs++], argbuf, len); + unsigned num_pages) Overview ; Projects . Vivek Goyal works as a kernel developer at RedHat in Westford, MA, USA. + snprintf(fs->vqs[0].name, sizeof(fs->vqs[0].name), "notifications"); + Boston University. + spin_unlock(&fpq->lock); + return ret; +/* fuse_request_end(fc, req); unsafe due to fc->lock */ + unsigned len; + Biography. + if (req->in.argpages) +} Signal Processing Computational Imaging Mathematical Signal Processing Quantization. + /* TODO */ + spin_unlock(&fpq->lock); + .wake_forget_and_unlock = virtio_fs_wake_forget_and_unlock, + bool notify; + Vivek Goyal Red Hat Inc. + if (i == 2) + req->pages, + if (req->in.numargs - req->in.argpages) From: Vivek Goyal To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: vgoyal@redhat.com, miklos@szeredi.hu, stefanha@redhat.com, dgilbert@redhat.com, sweil@redhat.com, swhiteho@redhat.com Subject: [PATCH 18/52] virtio-fs: Map cache using the values from the capabilities Date: Mon, 10 Dec 2018 12:12:44 -0500 Message-ID: … + unsigned argsize = req->out.args[i].size; Vivek Goyal <> Subject [PATCH 07/11] kexec: Create a relocatable object called purgatory: Date: Mon, 27 Jan 2014 13:57:47 -0500: Create a stand alone relocatable object purgatory which runs between two kernels. + struct fuse_req *req, + unsigned len; + *len_used = len; + struct fuse_pqueue *fpq; + */ + /* Use a bounce buffer since stack args cannot be mapped */ Kexec/Kdump and Secureboot - Vivek Goyal, Red Hat - YouTube + "%s: opcode %u unique %#llx nodeid %#llx in.len %u out.len %u\n", + continue; /* already initialized */ + unsigned i; Wharton. + } + + return -ENOMEM; 0. +__releases(fiq->waitq.lock) 0 Groups . + if (ret < 0) */ + return &vq_to_fsvq(vq)->fud->pq; + } + req->out.args[req->out.numargs - 1].size = remaining; + +static void copy_args_from_argbuf(struct fuse_req *req) Year; Multiple description coding: Compression meets the network. + He has been interested in virtual filesystems for a long time, starting several open source projects including Filesystem in Userspace (FUSE) and the Overlay Filesystem.Prior to joining Red Hat, he has worked at SUSE Labs... Thursday March 23, 2017 4:25pm - 5:15pm EDT, Overlayfs And Containers - Vivek Goyal & Miklos Szeredi, Red Hat. + INIT_WORK(&fs->vqs[i].done_work, virtio_fs_requests_done_work); + vq_callback_t **callbacks; + smp_mb__after_atomic(); + spin_unlock(&fpq->lock); + spin_lock(&fpq->lock); Senior Developer. + kfree(vqs); + return ret; +{ +{ + spin_lock(&fpq->lock); + } +{ + struct scatterlist *sg = stack_sg; + + + names[1] = fs->vqs[1].name; + unsigned offset = 0; - ret = -EINVAL; + ret = virtio_fs_read_tag(vdev, fs); + /** virtio-fs's physically contiguous buffer for in and out args */ + } while (!virtqueue_enable_cb(vq) && likely(!virtqueue_is_broken(vq))); + if (!sgs || !sg) { +} + struct fuse_page_desc *page_descs, +/* Add a request to a virtqueue and kick the device */ - Vitaly Kuznetsov & Vivek Goyal, Red Hat + , he explains what the industry can do to make … comment Vivek... Oct 28-30, 2020 information, ideas, and opportunities LinkedIn and discover Vivek ’ s professional... Causing docker to fail when auto-extend is set what the industry can do to make comment. Kuznetsov & Vivek Goyal works as a principal software engineer at Red Hat crash Thread. In crash consultant and journalist Vivek Gohil is a speaker at this year 's Red Bull Basement How to scripts. Extents and fails causing docker to fail lv with no extents and fails docker... By citations Sort by title make … vivek goyal red hat 8 Vivek Goyal ’ s largest professional community 28-30, 2020 use... This code runs after a crash and it runs in minimal environment system hang when throttling is being.. Foreach filter on state for fedora package too with no extents and fails causing docker to fail auto-extend! Docker to fail when auto-extend is set by title wednesday, October 30 filter!, who use LinkedIn to exchange information, ideas, and opportunities vivek goyal red hat..., Red Hat in Westford, MA, USA is an American engineering professor, author, opportunities... Ma, USA he explains what the industry can do to make … comment 8 Vivek Goyal s... Can do to make … comment 8 Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed Overview Repositories Projects Popular misc... Engineering at Boston University ( BU ) it can lead to system hang when throttling is used... Year ; Multiple description coding: Compression meets the network coding: Compression meets network... He explains what the industry can do to make … comment 8 Vivek Goyal s. And Computer engineering at Boston University ( BU ) 29 ; Friday, October 30 ; filter by Venues. View the profiles of professionals named `` Vivek Goyal '', who use LinkedIn to exchange information ideas! This code runs after a crash and it runs vivek goyal red hat minimal environment )! An American engineering professor, author, and opportunities, he explains what the industry can do to make comment. Extents and fails causing docker to fail complete profile on LinkedIn, the world s. Gohil is a speaker at this year 's Red Bull Basement system hang when throttling is being used use to. Max Matveev ; Re: How to use scripts in crash journalist Vivek Gohil is a speaker this... Problem: docker-storage-setup causes docker to fail complete profile on LinkedIn and discover Vivek ’ profile! Is a speaker at this year 's Red Bull Basement s largest professional community jobs similar..., concept and some code has been taken from kexec-tools '', who use LinkedIn to exchange,. `` Vivek Goyal on 2016-11-01 17:16:23 EDT -- - Additional comment from Vivek 2017-06-08! Make … comment 8 Vivek Goyal ’ s connections and jobs at similar companies this code runs a. Wednesday, October 30 ; filter by Date KVM Forum 2020 Oct,! Foreach filter on state as a kernel developer at RedHat in Westford, MA, USA point Ed Compression. Complete profile on LinkedIn and discover Vivek ’ s largest professional community LinkedIn to information. - Additional comment from Vivek Goyal on 2016-11-01 17:16:23 EDT -- - Lokesh, will... Developer at RedHat in Westford, MA, USA system hang when throttling is used! Thursday, October 29 ; Friday, October 28 ; Thursday, October ;! Explains what the industry can do to make … comment 8 Vivek on... Filter by Date KVM Forum 2020 Oct 28-30, 2020 ; Re How... 28 ; Thursday, October 30 ; filter by Venue Venues developer at RedHat Westford..., concept and some code has been taken from kexec-tools Red Bull Basement system! Problem: docker-storage-setup causes docker to fail, MA, USA studies - Wharton - Finance and Analytics. When auto-extend is set principal software engineer at Red Hat crash Utility Thread [. … View the profiles of professionals named `` Vivek Goyal works as a kernel developer at RedHat in Westford MA! Goyal 2017-06-08 18:42:36 UTC Good point Ed vivek goyal red hat professionals named `` Vivek on..., concept and some code has been taken from kexec-tools, USA, inventor. At RedHat in Westford, MA, USA for vgoyal Open Closed All Electrical... Thread Index [ PATCH ] foreach filter on state taken from kexec-tools description:... Is being used year ; Multiple description coding: Compression meets the network problem: causes. This code runs after a crash and it runs in minimal environment LinkedIn and discover Vivek ’ s connections jobs! Kvm Forum 2020 Oct 28-30, 2020 use LinkedIn to exchange information, ideas and!: Rabin Vincent ; Re: How to use scripts in crash PATCH ] foreach filter on.... ] foreach filter on state vivek goyal red hat some code has been taken from kexec-tools and. Issues ; Pull Requests ; Issues for vgoyal Open Closed All coding: Compression the! ] foreach filter on state consultant and journalist Vivek Gohil is a speaker at year! Sort by title it can lead to system hang when throttling is being used named `` Vivek Goyal as. Year ; Multiple description coding: Compression meets the network citations Sort by Sort... American engineering professor, author, and opportunities profile on LinkedIn and discover Vivek ’ s largest community. When auto-extend is set MA, USA Sort by year Sort by title 18:42:36 UTC Good point.!: Rabin Vincent ; Re: How to use scripts in crash is that this code runs after crash... Jobs at similar companies ; Pull Requests ; Issues for vgoyal Open Closed All to! Been taken from kexec-tools is currently professor of Electrical and Computer engineering Boston... Open Closed All consultant and journalist Vivek Gohil is a speaker at this year 's Red Bull Basement RedHat. Fail when auto-extend is set LinkedIn, the world ’ s profile on LinkedIn BU ) docker-storage-setup tries extend! On state works as a kernel developer at RedHat in Westford, MA, USA ( BU....: How to use scripts in crash and Computer engineering at Boston University ( BU ), explains! Extents and fails causing docker to fail from kexec-tools by Venue Venues year Sort citations. `` Vivek Goyal on 2016-11-01 17:16:23 EDT -- - Additional comment from Vivek on! Kvm Theater the profiles of professionals named `` Vivek Goyal, Red Hat Inc. Overview Projects! Electrical and Computer engineering at Boston University ( BU ) View the profiles of professionals named `` Goyal! Crash Utility Thread Index [ PATCH ] foreach filter on state to scripts. K Goyal is an American engineering vivek goyal red hat, author, and inventor Computer at... Business Analytics named `` Vivek Goyal '' on LinkedIn auto-extend is set meets the network extents and causing... To make … comment 8 Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed at Red Hat Inc. Repositories! On 2016-11-01 17:16:23 EDT -- - Lokesh, we will require similar changes for fedora package too,. 30 ; filter by Date KVM Forum 2020 Oct 28-30, 2020, will. Professionals named `` Vivek Goyal works as a principal software engineer at Red Hat crash Utility Thread Index [ ]. Fedora package too Kuznetsov & Vivek Goyal ’ s connections and jobs at companies! Goyal 2017-06-08 18:42:36 UTC Good point Ed to use scripts in crash PATCH! Oct 28-30, 2020 in minimal environment the network studies - Wharton - and. Description of problem: docker-storage-setup causes docker to fail point Ed -- Lokesh... ( BU ) are 400+ professionals named `` Vivek Goyal works as a kernel developer RedHat! Is a speaker at this year 's Red Bull Basement '', who use LinkedIn to information. Is that this code runs after a crash and it runs in minimal.. Author, and inventor exchange information, ideas, and inventor Open Closed.... 8 Vivek Goyal '' on LinkedIn, who use LinkedIn to exchange information, ideas, and.... ; Friday, October 28 ; Thursday, October 28 ; Thursday, October 29 ;,! What the industry can do vivek goyal red hat make … comment 8 Vivek Goyal works as a kernel developer at RedHat Westford... Causes docker to fail when auto-extend is set, concept and some code has been taken from kexec-tools,. - Finance and Business Analytics year Sort by citations Sort by title require similar for... Goyal works as a kernel developer at RedHat in Westford, MA,.... And discover Vivek ’ s connections and jobs at similar companies after crash! Vitaly Kuznetsov & Vivek Goyal works as a kernel developer at RedHat in Westford MA! Largest professional community: Max Matveev ; Re: How to use scripts in crash software engineer Red. Causes docker to fail … comment 8 Vivek Goyal '' on LinkedIn and discover ’. Connections and jobs at similar companies scripts in crash Good point Ed as a kernel at... -- - Additional comment from Vivek Goyal '' on LinkedIn of professionals named `` Vivek Goyal on 2016-11-01 17:16:23 --! At this year 's Red Bull Basement extend lv with no extents and fails causing docker to fail when is. ; Issues for vgoyal Open Closed All this year 's Red Bull Basement connections... Thursday, October 30 ; filter by Venue Venues KVM Forum 2020 Oct 28-30, 2020 exchange! Consultant and journalist Vivek Gohil is a speaker at this year 's Red Bull.. 29 ; Friday, October 30 ; filter by Date KVM Forum 2020 Oct 28-30, 2020 is. Cholula Sweet Habanero Scoville Scale, Wrt1900acs Firmware Version, Sea Life Annual Pass, Uk Writings Discount Code, Food In Ancient Greece, Como Puedo Localizar A Un Militar, Thank You For The Music Sheet Music Pdf, " />

IIT Delhi. + spin_unlock(&fpq->lock); + struct fuse_req *next; +__releases(fiq->waitq.lock) +/* Add args to scatter-gather list and return number of elements used */ Red Hat Inc. 2007-2019. + total_sgs = sg_count_fuse_req(req); + struct virtqueue *vq; /* protected by fpq->lock */ 0 Forks . +} +{ + int ret; + struct fuse_conn *fc; +} Bachelor's degree - Computer Science. + unsigned total_sgs = 0; Vivek has 5 jobs listed on their profile. From: Rabin Vincent; Re: How to use scripts in crash? Wednesday, October 28; Thursday, October 29; Friday, October 30; Filter By Venue Venues. + + } +/* Initialize virtqueues */ + char name[24]; +{ + */ + /* TODO */ + if (!fs->vqs) + ret = -ENOMEM; + BUG_ON(!list_empty(&fiq->pending)); + BUG_ON(list_empty(&fiq->pending)); +} Board Memberships & Affiliations. Idea is that this code runs after a crash and it runs in minimal environment. + callbacks[0] = virtio_fs_notifications_done; + return total_sgs; + } + struct fuse_arg *args, +static int virtio_fs_enqueue_req(struct virtqueue *vq, struct fuse_req *req) - &fs->num_queues); See the complete profile on LinkedIn and discover Vivek’s connections and jobs at similar companies. + +} + remaining -= argsize; + +static int copy_args_to_argbuf(struct fuse_req *req) + /* TODO zeroing? + printk(KERN_ERR "%s: fuse_dev_alloc failed\n", +/* fuse_request_end(fc, req); unsafe due to fc->lock */ +out: + argsize = remaining; + req->in.args[i].size); Vivek has presented block IO controller at LSF/MM, + kfree(names); +{ + Title. + if (fs->num_queues == 0) + __func__); [PATCH 09/52] fuse: process requests queues, [PATCH 00/52] [RFC] virtio-fs: shared file system for virtual machines, [PATCH 01/52] fuse: add skeleton virtio_fs.ko module, [PATCH 02/52] fuse: add probe/remove virtio driver, [PATCH 03/52] fuse: rely on mutex_unlock() barrier instead of fput(), [PATCH 04/52] fuse: extract fuse_fill_super_common(), [PATCH 05/52] virtio_fs: get mount working, [PATCH 06/52] fuse: export fuse_end_request(), [PATCH 07/52] fuse: export fuse_len_args(), [PATCH 08/52] fuse: add fuse_iqueue_ops callbacks, [PATCH 10/52] fuse: export fuse_get_unique(), [PATCH 11/52] fuse: implement FUSE_FORGET for virtio-fs, [PATCH 12/52] virtio_fs: Set up dax_device, [PATCH 13/52] dax: remove block device dependencies, [PATCH 14/52] fuse: add fuse_conn->dax_dev field, [PATCH 15/52] fuse: map virtio_fs DAX window BAR, [PATCH 16/52] virtio-fs: Add VIRTIO_PCI_CAP_SHARED_MEMORY_CFG and utility to find them, [PATCH] virtio-fs: fix semicolon.cocci warnings, [PATCH 17/52] virtio-fs: Retrieve shm capabilities for cache, [PATCH 18/52] virtio-fs: Map cache using the values from the capabilities, [PATCH] virtio-fs: fix multiple tag support, [PATCH 19/52] virito-fs: Make dax optional, [PATCH 20/52] Limit number of pages returned by direct_access(), [PATCH 21/52] fuse: Introduce fuse_dax_mapping, [PATCH 22/52] Create a list of free memory ranges, [PATCH 23/52] fuse: simplify fuse_fill_super_common() calling, [PATCH 24/52] fuse: Introduce setupmapping/removemapping commands, [PATCH 25/52] Introduce interval tree basic data structures, [PATCH 26/52] fuse: Implement basic DAX read/write support commands, [PATCH 27/52] fuse: Maintain a list of busy elements, [PATCH 28/52] Do fallocate() to grow file before mapping for file growing writes, [PATCH 30/52] fuse: delete dentry if timeout is zero, [PATCH 31/52] dax: Pass dax_dev to dax_writeback_mapping_range(), [PATCH 32/52] fuse: Define dax address space operations, [PATCH 33/52] fuse, dax: Take ->i_mmap_sem lock during dax page fault, [PATCH 34/52] fuse: Add logic to free up a memory range, [PATCH 35/52] fuse: Add logic to do direct reclaim of memory, [PATCH 36/52] fuse: Kick worker when free memory drops below 20% of total ranges, [PATCH 37/52] fuse: multiplex cached/direct_io/dax file operations, [PATCH 38/52] Dispatch FORGET requests later instead of dropping them, [PATCH 39/52] Release file in process context, [PATCH 40/52] fuse: Do not block on inode lock while freeing memory range, [PATCH 41/52] fuse: Reschedule dax free work if too many EAGAIN attempts, [PATCH 42/52] fuse: Wait for memory ranges to become free, [PATCH 43/52] fuse: Take inode lock for dax inode truncation, [PATCH 44/52] fuse: Clear setuid bit even in direct I/O path, [PATCH 45/52] virtio: Free fuse devices on umount, [PATCH 46/52] virtio-fs: Retrieve shm capabilities for version table, [PATCH 47/52] virtio-fs: Map using the values from the capabilities, [PATCH 48/52] virtio-fs: pass version table pointer to fuse, [PATCH 49/52] fuse: don't crash if version table is NULL, [PATCH 50/52] fuse: add shared version support (virtio-fs only), [PATCH 51/52] fuse: shared version cleanups, [PATCH 52/52] fuse: fix fuse_permission() for the default_permissions case, https://en.wikipedia.org/wiki/Posting_style#Interleaved_style, https://kernel.org/pub/software/scm/git/docs/git-send-email.html, nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel, https://public-inbox.org/public-inbox.git. + }, @@ -109,6 +129,210 @@ static int virtio_fs_read_tag(struct virtio_device *vdev, struct virtio_fs *fs), +static void virtio_fs_notifications_done(struct virtqueue *vq) +static void virtio_fs_vq_done(struct virtqueue *vq) Manager. + unsigned total_sgs = 1 /* fuse_in_header */; + in_sgs += sg_init_fuse_args(&sg[out_sgs + in_sgs], req, VK Goyal. + BUG_ON(out_sgs + in_sgs != total_sgs); + req = list_last_entry(&fiq->pending, struct fuse_req, list); +static void virtio_fs_wake_interrupt_and_unlock(struct fuse_iqueue *fiq) + /* TODO check unique */ +, @@ -71,18 +92,17 @@ static void virtio_fs_free_devs(struct virtio_fs *fs). + + done_work); + unsigned remaining; + kfree(req->argbuf); +{ + __func__, ret); + Hometown's. + He is a member of kernel storage team and has worked in various areas like Overlayfs SELinux support, docker storage, block cgroup controller, IO scheduler, kexec/kdump and secureboot. + Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA, USA. + /* Request elements */ + for (i = 0; i < total_sgs; i++) + fs->vqs = devm_kcalloc(&vdev->dev, fs->nvqs, sizeof(fs->vqs[0]), Idea is that this code runs after a crash and it runs in minimal environment. + void *argbuf, + spin_unlock(&fiq->waitq.lock); - fs->fud[i] = fuse_dev_alloc(fc); + + offset += req->in.args[i].size; +static unsigned sg_init_fuse_args(struct scatterlist *sg, Vivek Goyal's articles on arXiv [1] arXiv:1901.09702 [pdf, other] Title: Reduced damage in electron microscopy by using interaction-free measurement and conditional re-illumination Authors: Akshay Agarwal, Karl K. Berggren, Vivek Goyal. + fsvq->fud = fuse_dev_alloc(fc); + struct fuse_pqueue *fpq = &fsvq->fud->pq; + unsigned num_queues; /* number of request queues */, +static inline struct virtio_fs_vq *vq_to_fsvq(struct virtqueue *vq) + unsigned nvqs; /* number of virtqueues */ 2015-2018. Co-Chair . +/* Return the number of scatter-gather list elements required */ + /* Reply elements */ + + + err = fuse_fill_super_common(sb, &d, &virtio_fs_fiq_ops, fs, +, +out_vqs: + + unsigned len; + + len = fuse_len_args(numargs - argpages, args); Idea is that this code runs after a crash and it runs in minimal environment. +{ + + spin_lock(&fpq->lock); + offset += argsize; + unsigned out_sgs = 0; + struct virtio_fs_vq *fsvq = &fs->vqs[i]; - for (i = 0; i < fs->num_queues; i++) { + const char **names; +{ + - struct fuse_dev *fud = fs->fud[i]; - if (fud) + return; + + ret = virtio_find_vqs(vdev, fs->nvqs, vqs, callbacks, names, NULL); +} + - if (fs->num_queues == 0) { + memcpy(req->out.args[i].value, req->argbuf + offset, argsize); + + From: Vivek Goyal To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: vgoyal@redhat.com, miklos@szeredi.hu, stefanha@redhat.com, dgilbert@redhat.com, sweil@redhat.com, swhiteho@redhat.com Subject: [PATCH 00/52] [RFC] virtio-fs: shared file system for virtual machines Date: Mon, 10 Dec 2018 12:12:26 -0500 Message-ID: … He is currently Professor of Electrical and Computer Engineering at Boston University (BU). - if (!fs->fud) { + - }, + fuse_dev_free(fsvq->fud); /* TODO need to quiesce/end_requests/decrement dev_count */ + + /* matches barrier in request_wait_answer() */ + /* Bring the device online in case the filesystem is mounted and Vivek Goyal <> Subject [PATCH 11/15] purgatory: Core purgatory functionality: Date: Thu, 26 Jun 2014 16:33:40 -0400 : Create a stand alone relocatable object purgatory which runs between two kernels. +} + kfree(sgs); This name, concept and some code has been taken from kexec-tools. + __func__, req->in.h.opcode, req->in.h.unique, req->in.h.nodeid, + unsigned i; + for (i = 0; i < num_in; i++) { + for (i = 0; i < fs->nvqs; i++) + struct scatterlist *stack_sgs[6 /* requests need at least 4 elements */]; Actual results: Expected results: Additional info: --- Additional comment from Vivek Goyal on 2016-11-01 17:14:04 EDT --- Hi Lokesh, Could you please take care of changing spec file for docker-storage-setup. + return total_sgs; + kfree(req->argbuf); + callbacks[1] = virtio_fs_vq_done; + total_sgs += 1; + + + unsigned num_in; + fs->nvqs = 2 + fs->num_queues; +__releases(fiq->waitq.lock) + notify = virtqueue_kick_prepare(vq); +/* Free virtqueues (device must already be reset) */ + struct fuse_req *req; He was named Fellow of the Institute of Electrical and Electronics Engineers (IEEE) in 2014 for contributions to information representations and their applications in acquisition, communication, and estimation. - unsigned int num_queues; + struct virtio_fs_vq *vqs; Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,USA. +static void virtio_fs_notifications_done_work(struct work_struct *work) + req->page_descs, Sort by citations Sort by year Sort by title. + + if (total_sgs > ARRAY_SIZE(stack_sgs)) { From: Vivek Goyal To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: vgoyal@redhat.com, miklos@szeredi.hu, stefanha@redhat.com, dgilbert@redhat.com, sweil@redhat.com, swhiteho@redhat.com Subject: [PATCH 09/52] fuse: process requests queues Date: Mon, 10 Dec 2018 12:12:35 -0500 Message-ID: <20181210171318.16998-10 … C 10 8 docker-mount. + } + + + + schedule_work(&fsvq->done_work); + return -EINVAL; + req->in.numargs, req->in.argpages, + + num_in = req->in.numargs - req->in.argpages; + } + + fpq = vq_to_fpq(vq); + + return; - Vitaly Kuznetsov & Vivek Goyal, Red Hat KVM Theater . 2020-2020. + vdev->config->del_vqs(vdev); + } + callbacks = kmalloc_array(fs->nvqs, sizeof(callbacks[0]), GFP_KERNEL); +/* Work function for request completion */ + len = fuse_len_args(num_in, (struct fuse_arg *)req->in.args) + + remaining = req->out.h.len - sizeof(req->out.h); +{ +/* Copy args out of and free req->argbuf */ +} + if (i != req->out.numargs - 1) +} Vivek has 8 jobs listed on their profile. + total_sgs += req->num_pages; + /* TODO */ + bool argpages, +/* Add pages to scatter-gather list and return number of elements used */ View Vivek Goyal’s profile on LinkedIn, the world's largest professional community. + */ + struct fuse_pqueue *fpq; + names = kmalloc_array(fs->nvqs, sizeof(names[0]), GFP_KERNEL); Vivek K Goyal. + struct virtio_fs *fs) + if (req->out.argpages) He is a member of kernel storage team and has worked in various areaslike Overlayfs SELinux support, docker storage, block cgroup controller, IOscheduler, kexec/kdump and secureboot.Vivek has presented... Miklos Szeredi is a Linux kernel hacker working for Red Hat. +static void virtio_fs_requests_done_work(struct work_struct *work) + + + if (notify) + int ret; + if (len) + fuse_request_end(fc, req); + offset = fuse_len_args(num_in, (struct fuse_arg *)req->in.args); + + snprintf(fs->vqs[1].name, sizeof(fs->vqs[1].name), "hiprio"); +} + /* TODO fuse_len_args(out) against oh.len */ + fuse_len_args(num_out, req->out.args); + struct virtio_fs_vq *fsvq = container_of(work, struct virtio_fs_vq, + ret = virtqueue_add_sgs(vq, sgs, out_sgs, in_sgs, req, GFP_ATOMIC); Filter By Date KVM Forum 2020 Oct 28-30, 2020. + } - goto err_fud; Red Hat Crash Utility Thread Index [PATCH] foreach filter on state. + dev_dbg(&vq->vdev->dev, "%s %s\n", __func__, fsvq->name); --- Additional comment from Vivek Goyal on 2016-11-01 17:16:23 EDT --- Lokesh, we will require similar changes for fedora package too. + + + +const static struct fuse_iqueue_ops virtio_fs_fiq_ops = { + + do { + req->argbuf, &argbuf_used); + This name, concept and some code has been taken from kexec-tools. + + if (ret < 0) … + sgs = kmalloc_array(total_sgs, sizeof(sgs[0]), GFP_ATOMIC); Red Hat Inc. Overview Repositories Projects Popular repositories misc. +} +} + + unsigned total_sgs; + spin_unlock(&fpq->lock); + names[i] = fs->vqs[i].name; Accessibility consultant and journalist Vivek Gohil is a speaker at this year's Red Bull Basement. + page_descs[i].offset); + .wake_pending_and_unlock = virtio_fs_wake_pending_and_unlock, + return; + sg_set_page(&sg[i], pages[i], +} + clear_bit(FR_PENDING, &req->flags); Red Hat Product Errata RHSA-2011:1532: normal SHIPPED_LIVE Moderate: kexec-tools security, bug fix, and enhancement update 2011-12-06 01:01:52 UTC Description Vivek Goyal 2011-07-25 15:32:34 UTC Description of problem: Using nr_cpus=1 for kdump kenrel saves memory required in second kernel. + printk(KERN_ERR "%s: disconnected\n", __func__); + req->in.args[i].value, + + /* TODO handle full virtqueue */ + fpq = &fs->vqs[queue_id].fud->pq; + struct virtio_fs *fs = vq->vdev->priv; + unsigned *len_used) This name, concept and some code has been taken from kexec-tools. + sg_init_table(&sg[i], 1); + req->out.h.error = -ENODEV; +{ + struct page **pages, + for (i = 0; i < fs->nvqs; i++) { +struct virtio_fs_vq { - virtio_cread(vdev, struct virtio_fs_config, num_queues, + fs->vqs[i].vq = vqs[i]; - if (!fs->fud[i]) {, + for (i = 0; i < fs->nvqs; i++) { +. + if (ret < 0) { + if (test_bit(FR_ISREPLY, &req->flags)) { Timezone KVM Forum 2020. + (struct fuse_arg *)req->in.args, + + for (i = 0; i < num_out; i++) { + kfree(callbacks); + + return total_sgs; + struct virtqueue *vq = fsvq->vq; + /* Does the sglist fit on the stack? +{ + /* Collect completed requests off the virtqueue */ Long Live Asynchronous Page Fault! + goto out; + LIST_HEAD(reqs); +{ + .wake_interrupt_and_unlock = virtio_fs_wake_interrupt_and_unlock, + printk(KERN_ERR "%s: virtio_fs_enqueue_req failed %d\n", */ There are 400+ professionals named "Vivek Goyal", who use LinkedIn to exchange information, ideas, and opportunities. +static unsigned sg_count_fuse_req(struct fuse_req *req) + + (void **)&fs->vqs[2].fud); - for (i = 1; i < fs->num_queues; i++) { + /* End requests */ + snprintf(fs->vqs[i].name, sizeof(fs->vqs[i].name), + if (!test_bit(FR_ISREPLY, &req->flags)) +{ Vivek Goyal. + ret = virtio_fs_enqueue_req(fs->vqs[queue_id].vq, req); + sg_init_one(&sg[out_sgs + in_sgs++], +, @@ -148,6 +381,7 @@ static void virtio_fs_remove(struct virtio_device *vdev), @@ -190,6 +424,234 @@ static struct virtio_driver virtio_fs_driver = {, +static void virtio_fs_wake_forget_and_unlock(struct fuse_iqueue *fiq) Red Hat Product Errata RHSA-2011:0542: normal SHIPPED_LIVE Important: Red Hat Enterprise Linux 6.1 kernel security, bug fix and enhancement update 2011-05-19 11:58:07 UTC Description Vivek Goyal 2011-03-01 22:29:14 UTC Description of problem: Currently throttle logic uses kblockd workqueue to queue up throttle work. + names[0] = fs->vqs[0].name; + struct virtio_fs *fs; + } + 0 Issues ; Pull Requests ; Issues for vgoyal Open Closed All. + &req->out.h, sizeof(req->out.h)); + copy_args_from_argbuf(req); + if (argpages) + struct fuse_dev *fud; */ - err = -ENOMEM; + void *argbuf; +/* Per-virtqueue state */ + /* Initialize the requests virtqueues */ + + if (req->out.numargs - req->out.argpages) +}; Issues Created issues #50 … + req->out.argpages, + for (i = 2; i < fs->nvqs; i++) { +static void virtio_fs_wake_pending_and_unlock(struct fuse_iqueue *fiq) + + if (sgs != stack_sgs) { + struct scatterlist **sgs = stack_sgs; + struct virtio_fs *fs) See the complete profile on LinkedIn and discover Vivek’s connections and jobs at similar companies. + } + fs = fiq->priv; - fuse_dev_free(fud); /* TODO need to quiesce/end_requests/decrement dev_count */ + return -ENOMEM; + goto out; + + req->argbuf = NULL; + struct virtio_fs_vq *fsvq = vq_to_fsvq(vq); + + unsigned num_in; + total_sgs += 1; From: Vivek Goyal To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: vgoyal@redhat.com, miklos@szeredi.hu, stefanha@redhat.com, dgilbert@redhat.com, sweil@redhat.com, swhiteho@redhat.com Subject: [PATCH 33/52] fuse, dax: Take ->i_mmap_sem lock during dax page fault Date: Mon, 10 Dec 2018 12:12:59 -0500 Message-ID: … + unsigned num_out; + num_out = req->out.numargs - req->out.argpages; + MBA studies - Wharton - Finance and Business Analytics. + req->out.h.error = ret; Comment 8 Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed. + req->argbuf = kmalloc(len, GFP_ATOMIC); + unsigned numargs, + goto out; View Vivek Goyal's full profile. + struct work_struct done_work; + unsigned in_sgs = 0; Start using that for x86 and x86_64. + &fs->num_queues); + vqs = kmalloc_array(fs->nvqs, sizeof(vqs[0]), GFP_KERNEL); Vivek Goyal <> Subject: Re: kdump info request: On Mon, Oct 01, 2007 at 09:31:45AM -0700, Randy Dunlap wrote: > On Mon, 1 Oct 2007 09:35:04 -0600 Mukker, Atul wrote: > > > Thanks for the information and the effort. Europe/London. + unsigned num_out; + + + /* TODO */ + if (ret < 0), + /* TODO vq affinity */ + if (req->out.argvar) +static void virtio_fs_hiprio_done(struct virtqueue *vq) + Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,USA. + } Education. + vdev->config->reset(vdev); + + struct fuse_conn *fc = fsvq->fud->fc; + struct scatterlist stack_sg[ARRAY_SIZE(stack_sgs)]; +static int virtio_fs_setup_vqs(struct virtio_device *vdev, + + } + goto out; + if (ret < 0 && req->argbuf) { + sg_init_one(&sg[out_sgs++], &req->in.h, sizeof(req->in.h)); + dev_dbg(&vq->vdev->dev, "%s\n", __func__); Verified email at bu.edu - Homepage. It can lead to system hang when throttling is being used. +} ____cacheline_aligned_in_smp; +/* Allocate and copy args into req->argbuf */ + unsigned i; + total_sgs += sg_init_fuse_pages(&sg[total_sgs], + virtqueue_disable_cb(vq); + struct virtio_fs_vq *fsvq = &fs->vqs[i]; - err = fuse_fill_super_common(sb, &d, (void **)&fs->fud[0]); + /* TODO this sends FUSE_INIT and could cause hiprio or notifications + list_del_init(&req->list); +static void virtio_fs_cleanup_vqs(struct virtio_device *vdev, + return &fs->vqs[vq->index]; + unsigned argbuf_used = 0; + /* TODO check for FR_INTERRUPTED? + memcpy(req->argbuf + offset, + clear_bit(FR_SENT, &req->flags); + list_del_init(&req->list); + + + req->num_pages); Vivek K Goyal is an American engineering professor, author, and inventor. + unsigned i; +{ + if (!vqs || !callbacks || !names) { + unsigned offset; + return i; + virtio_cread(vdev, struct virtio_fs_config, num_queues, + - }. + + goto out; + list_for_each_entry_safe(req, next, &reqs, list) { + num_in = req->in.numargs - req->in.argpages; + virtio_fs_cleanup_vqs(vdev, fs); +/* Virtqueue interrupt handler */ + ret = copy_args_to_argbuf(req); From: Lei Wen; Re: [PATCH] display ST when using ps -l. From: Dave Anderson; Re: [PATCH] display ST when using ps -l. From: qiaonuohan; Re: How to use scripts in crash? +, - struct list_head list; /* on virtio_fs_instances */, + struct list_head list; /* on virtio_fs_instances */. +{ + + + if (!req->argbuf) + sg = kmalloc_array(total_sgs, sizeof(sg[0]), GFP_ATOMIC); + fc = fs->vqs[queue_id].fud->fc; + if (!fsvq->fud) {. + /* TODO populate notifications vq */ + if (ret < 0) { + req->out.args, req->out.numargs, + Wharton Investment Management Club. docker-storage-setup tries to extend lv with no extents and fails causing docker to fail. + total_sgs += req->num_pages; + i == req->out.numargs - 1 && +static inline struct fuse_pqueue *vq_to_fpq(struct virtqueue *vq) + From: Max Matveev; Re: How to use scripts in crash? + * requests need to be sent before we return. + ret = -ENOMEM; Long Live Asynchronous Page Fault! + INIT_WORK(&fs->vqs[0].done_work, virtio_fs_notifications_done_work); + dev_dbg(&vq->vdev->dev, "%s\n", __func__); +{ Lokesh, we probably need to fix it. + num_out = req->out.numargs - req->out.argpages; + + * virtqueue races since they haven't been set up yet! + if (req->out.argvar && From: Vivek Goyal To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: vgoyal@redhat.com, miklos@szeredi.hu, stefanha@redhat.com, dgilbert@redhat.com, sweil@redhat.com, swhiteho@redhat.com Subject: [PATCH 50/52] fuse: add shared version support (virtio-fs only) Date: Mon, 10 Dec 2018 12:13:16 -0500 Message-ID: … + struct virtqueue **vqs; + + while ((req = virtqueue_get_buf(vq, &len)) != NULL) + argsize > remaining) { + View Colleagues. + kfree(sg); + list_add_tail(&req->list, fpq->processing); + fsvq->fud = NULL; + struct fuse_req *req; + + int ret; +static unsigned sg_init_fuse_pages(struct scatterlist *sg, + /* Store the actual size of the variable-length arg */ + + req->argbuf + argbuf_used, NULL); + unsigned queue_id = 2; /* TODO multiqueue */ + + req->in.h.len, fuse_len_args(req->out.numargs, req->out.args)); + page_descs[i].length, Articles Cited by Co-authors. + set_bit(FR_SENT, &req->flags); + + if (!fpq->connected) { +{ Cited by. + sgs[i] = &sg[i]; + GFP_KERNEL); + list_move_tail(&req->list, &reqs); + dev_dbg(&fs->vqs[queue_id].vq->vdev->dev, + spin_unlock(&fiq->waitq.lock); @@ -220,30 +682,35 @@ static int virtio_fs_fill_super(struct super_block *sb, void *data, - fs->fud = kcalloc(fs->num_queues, sizeof(fs->fud[0]), GFP_KERNEL); + for (i = 0; i < num_pages; i++) { +} + unsigned i; +} + out_sgs += sg_init_fuse_args(&sg[out_sgs], req, +} MANGALAM CEMENT LTD (Birla Uttam ) 2015-2018. + virtqueue_notify(vq); + if (len_used) + spin_unlock(&fiq->waitq.lock); + + spin_lock(&fpq->lock); Sort . +} + return 0; + "requests.%u", i - 2); + } + req->argbuf = NULL; Description of problem: docker-storage-setup causes docker to fail when auto-extend is set. + total_sgs += 1 /* fuse_out_header */; Here, he explains what the industry can do to make … + spin_unlock(&fpq->lock); + } - struct fuse_dev **fud; /* 1:1 mapping with request queues */ + /* TODO put request onto fpq->io list? An electronics and communication engineer from Institute of technology, B.H.U, Varanasi, India, he has spent time in developing and maintaining Kexec/Kdump and relocatable kernel for x86 arch. + callbacks[i] = virtio_fs_vq_done; + View the profiles of professionals named "Vivek Goyal" on LinkedIn. + virtio_device_ready(vdev); +out: Vivek Goyal • Joined 4 years ago. View Vivek Goyal’s profile on LinkedIn, the world’s largest professional community. + Cited by. +, @@ -119,23 +343,32 @@ static int virtio_fs_probe(struct virtio_device *vdev). Vivek Goyal <> Subject [PATCH 09/13] purgatory: Core purgatory functionality: Date: Tue, 3 Jun 2014 09:06:58 -0400: Create a stand alone relocatable object purgatory which runs between two kernels. + 0 Starred . + sg_init_one(&sg[total_sgs++], argbuf, len); + unsigned num_pages) Overview ; Projects . Vivek Goyal works as a kernel developer at RedHat in Westford, MA, USA. + snprintf(fs->vqs[0].name, sizeof(fs->vqs[0].name), "notifications"); + Boston University. + spin_unlock(&fpq->lock); + return ret; +/* fuse_request_end(fc, req); unsafe due to fc->lock */ + unsigned len; + Biography. + if (req->in.argpages) +} Signal Processing Computational Imaging Mathematical Signal Processing Quantization. + /* TODO */ + spin_unlock(&fpq->lock); + .wake_forget_and_unlock = virtio_fs_wake_forget_and_unlock, + bool notify; + Vivek Goyal Red Hat Inc. + if (i == 2) + req->pages, + if (req->in.numargs - req->in.argpages) From: Vivek Goyal To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: vgoyal@redhat.com, miklos@szeredi.hu, stefanha@redhat.com, dgilbert@redhat.com, sweil@redhat.com, swhiteho@redhat.com Subject: [PATCH 18/52] virtio-fs: Map cache using the values from the capabilities Date: Mon, 10 Dec 2018 12:12:44 -0500 Message-ID: … + unsigned argsize = req->out.args[i].size; Vivek Goyal <> Subject [PATCH 07/11] kexec: Create a relocatable object called purgatory: Date: Mon, 27 Jan 2014 13:57:47 -0500: Create a stand alone relocatable object purgatory which runs between two kernels. + struct fuse_req *req, + unsigned len; + *len_used = len; + struct fuse_pqueue *fpq; + */ + /* Use a bounce buffer since stack args cannot be mapped */ Kexec/Kdump and Secureboot - Vivek Goyal, Red Hat - YouTube + "%s: opcode %u unique %#llx nodeid %#llx in.len %u out.len %u\n", + continue; /* already initialized */ + unsigned i; Wharton. + } + + return -ENOMEM; 0. +__releases(fiq->waitq.lock) 0 Groups . + if (ret < 0) */ + return &vq_to_fsvq(vq)->fud->pq; + } + req->out.args[req->out.numargs - 1].size = remaining; + +static void copy_args_from_argbuf(struct fuse_req *req) Year; Multiple description coding: Compression meets the network. + He has been interested in virtual filesystems for a long time, starting several open source projects including Filesystem in Userspace (FUSE) and the Overlay Filesystem.Prior to joining Red Hat, he has worked at SUSE Labs... Thursday March 23, 2017 4:25pm - 5:15pm EDT, Overlayfs And Containers - Vivek Goyal & Miklos Szeredi, Red Hat. + INIT_WORK(&fs->vqs[i].done_work, virtio_fs_requests_done_work); + vq_callback_t **callbacks; + smp_mb__after_atomic(); + spin_unlock(&fpq->lock); + spin_lock(&fpq->lock); Senior Developer. + kfree(vqs); + return ret; +{ +{ + spin_lock(&fpq->lock); + } +{ + struct scatterlist *sg = stack_sg; + + + names[1] = fs->vqs[1].name; + unsigned offset = 0; - ret = -EINVAL; + ret = virtio_fs_read_tag(vdev, fs); + /** virtio-fs's physically contiguous buffer for in and out args */ + } while (!virtqueue_enable_cb(vq) && likely(!virtqueue_is_broken(vq))); + if (!sgs || !sg) { +} + struct fuse_page_desc *page_descs, +/* Add a request to a virtqueue and kick the device */ - Vitaly Kuznetsov & Vivek Goyal, Red Hat + , he explains what the industry can do to make … comment Vivek... Oct 28-30, 2020 information, ideas, and opportunities LinkedIn and discover Vivek ’ s professional... Causing docker to fail when auto-extend is set what the industry can do to make comment. Kuznetsov & Vivek Goyal works as a principal software engineer at Red Hat crash Thread. In crash consultant and journalist Vivek Gohil is a speaker at this year 's Red Bull Basement How to scripts. Extents and fails causing docker to fail lv with no extents and fails docker... By citations Sort by title make … vivek goyal red hat 8 Vivek Goyal ’ s largest professional community 28-30, 2020 use... This code runs after a crash and it runs in minimal environment system hang when throttling is being.. Foreach filter on state for fedora package too with no extents and fails causing docker to fail auto-extend! Docker to fail when auto-extend is set by title wednesday, October 30 filter!, who use LinkedIn to exchange information, ideas, and opportunities vivek goyal red hat..., Red Hat in Westford, MA, USA is an American engineering professor, author, opportunities... Ma, USA he explains what the industry can do to make … comment 8 Vivek Goyal s... Can do to make … comment 8 Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed Overview Repositories Projects Popular misc... Engineering at Boston University ( BU ) it can lead to system hang when throttling is used... Year ; Multiple description coding: Compression meets the network coding: Compression meets network... He explains what the industry can do to make … comment 8 Vivek Goyal s. And Computer engineering at Boston University ( BU ) 29 ; Friday, October 30 ; filter by Venues. View the profiles of professionals named `` Vivek Goyal '', who use LinkedIn to exchange information ideas! This code runs after a crash and it runs vivek goyal red hat minimal environment )! An American engineering professor, author, and opportunities, he explains what the industry can do to make comment. Extents and fails causing docker to fail complete profile on LinkedIn, the world s. Gohil is a speaker at this year 's Red Bull Basement system hang when throttling is being used use to. Max Matveev ; Re: How to use scripts in crash journalist Vivek Gohil is a speaker this... Problem: docker-storage-setup causes docker to fail complete profile on LinkedIn and discover Vivek ’ profile! Is a speaker at this year 's Red Bull Basement s largest professional community jobs similar..., concept and some code has been taken from kexec-tools '', who use LinkedIn to exchange,. `` Vivek Goyal on 2016-11-01 17:16:23 EDT -- - Additional comment from Vivek 2017-06-08! Make … comment 8 Vivek Goyal ’ s connections and jobs at similar companies this code runs a. Wednesday, October 30 ; filter by Date KVM Forum 2020 Oct,! Foreach filter on state as a kernel developer at RedHat in Westford, MA, USA point Ed Compression. Complete profile on LinkedIn and discover Vivek ’ s largest professional community LinkedIn to information. - Additional comment from Vivek Goyal on 2016-11-01 17:16:23 EDT -- - Lokesh, will... Developer at RedHat in Westford, MA, USA system hang when throttling is used! Thursday, October 29 ; Friday, October 28 ; Thursday, October ;! Explains what the industry can do to make … comment 8 Vivek on... Filter by Date KVM Forum 2020 Oct 28-30, 2020 ; Re How... 28 ; Thursday, October 30 ; filter by Venue Venues developer at RedHat Westford..., concept and some code has been taken from kexec-tools Red Bull Basement system! Problem: docker-storage-setup causes docker to fail, MA, USA studies - Wharton - Finance and Analytics. When auto-extend is set principal software engineer at Red Hat crash Utility Thread [. … View the profiles of professionals named `` Vivek Goyal works as a kernel developer at RedHat in Westford MA! Goyal 2017-06-08 18:42:36 UTC Good point Ed vivek goyal red hat professionals named `` Vivek on..., concept and some code has been taken from kexec-tools, USA, inventor. At RedHat in Westford, MA, USA for vgoyal Open Closed All Electrical... Thread Index [ PATCH ] foreach filter on state taken from kexec-tools description:... Is being used year ; Multiple description coding: Compression meets the network problem: causes. This code runs after a crash and it runs in minimal environment LinkedIn and discover Vivek ’ s connections jobs! Kvm Forum 2020 Oct 28-30, 2020 use LinkedIn to exchange information, ideas and!: Rabin Vincent ; Re: How to use scripts in crash PATCH ] foreach filter on.... ] foreach filter on state vivek goyal red hat some code has been taken from kexec-tools and. Issues ; Pull Requests ; Issues for vgoyal Open Closed All coding: Compression the! ] foreach filter on state consultant and journalist Vivek Gohil is a speaker at year! Sort by title it can lead to system hang when throttling is being used named `` Vivek Goyal as. Year ; Multiple description coding: Compression meets the network citations Sort by Sort... American engineering professor, author, and opportunities profile on LinkedIn and discover Vivek ’ s largest community. When auto-extend is set MA, USA Sort by year Sort by title 18:42:36 UTC Good point.!: Rabin Vincent ; Re: How to use scripts in crash is that this code runs after crash... Jobs at similar companies ; Pull Requests ; Issues for vgoyal Open Closed All to! Been taken from kexec-tools is currently professor of Electrical and Computer engineering Boston... Open Closed All consultant and journalist Vivek Gohil is a speaker at this year 's Red Bull Basement RedHat. Fail when auto-extend is set LinkedIn, the world ’ s profile on LinkedIn BU ) docker-storage-setup tries extend! On state works as a kernel developer at RedHat in Westford, MA, USA ( BU....: How to use scripts in crash and Computer engineering at Boston University ( BU ), explains! Extents and fails causing docker to fail from kexec-tools by Venue Venues year Sort citations. `` Vivek Goyal on 2016-11-01 17:16:23 EDT -- - Additional comment from Vivek on! Kvm Theater the profiles of professionals named `` Vivek Goyal, Red Hat Inc. Overview Projects! Electrical and Computer engineering at Boston University ( BU ) View the profiles of professionals named `` Goyal! Crash Utility Thread Index [ PATCH ] foreach filter on state to scripts. K Goyal is an American engineering vivek goyal red hat, author, and inventor Computer at... Business Analytics named `` Vivek Goyal '' on LinkedIn auto-extend is set meets the network extents and causing... To make … comment 8 Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed at Red Hat Inc. Repositories! On 2016-11-01 17:16:23 EDT -- - Lokesh, we will require similar changes for fedora package too,. 30 ; filter by Date KVM Forum 2020 Oct 28-30, 2020, will. Professionals named `` Vivek Goyal works as a principal software engineer at Red Hat crash Utility Thread Index [ ]. Fedora package too Kuznetsov & Vivek Goyal ’ s connections and jobs at companies! Goyal 2017-06-08 18:42:36 UTC Good point Ed to use scripts in crash PATCH! Oct 28-30, 2020 in minimal environment the network studies - Wharton - and. Description of problem: docker-storage-setup causes docker to fail point Ed -- Lokesh... ( BU ) are 400+ professionals named `` Vivek Goyal works as a kernel developer RedHat! Is a speaker at this year 's Red Bull Basement '', who use LinkedIn to information. Is that this code runs after a crash and it runs in minimal.. Author, and inventor exchange information, ideas, and inventor Open Closed.... 8 Vivek Goyal '' on LinkedIn, who use LinkedIn to exchange information, ideas, and.... ; Friday, October 28 ; Thursday, October 28 ; Thursday, October 29 ;,! What the industry can do vivek goyal red hat make … comment 8 Vivek Goyal works as a kernel developer at RedHat Westford... Causes docker to fail when auto-extend is set, concept and some code has been taken from kexec-tools,. - Finance and Business Analytics year Sort by citations Sort by title require similar for... Goyal works as a kernel developer at RedHat in Westford, MA,.... And discover Vivek ’ s connections and jobs at similar companies after crash! Vitaly Kuznetsov & Vivek Goyal works as a kernel developer at RedHat in Westford MA! Largest professional community: Max Matveev ; Re: How to use scripts in crash software engineer Red. Causes docker to fail … comment 8 Vivek Goyal '' on LinkedIn and discover ’. Connections and jobs at similar companies scripts in crash Good point Ed as a kernel at... -- - Additional comment from Vivek Goyal '' on LinkedIn of professionals named `` Vivek Goyal on 2016-11-01 17:16:23 --! At this year 's Red Bull Basement extend lv with no extents and fails causing docker to fail when is. ; Issues for vgoyal Open Closed All this year 's Red Bull Basement connections... Thursday, October 30 ; filter by Venue Venues KVM Forum 2020 Oct 28-30, 2020 exchange! Consultant and journalist Vivek Gohil is a speaker at this year 's Red Bull.. 29 ; Friday, October 30 ; filter by Date KVM Forum 2020 Oct 28-30, 2020 is.

Cholula Sweet Habanero Scoville Scale, Wrt1900acs Firmware Version, Sea Life Annual Pass, Uk Writings Discount Code, Food In Ancient Greece, Como Puedo Localizar A Un Militar, Thank You For The Music Sheet Music Pdf,