fud[0]); + /* TODO this sends FUSE_INIT and could cause hiprio or notifications + kfree(sgs); 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. +} +/* Add pages to scatter-gather list and return number of elements used */ + if (i != req->out.numargs - 1) + req->argbuf, &argbuf_used); +} + done_work); Vivek Goyal Red Hat Inc. + dev_dbg(&fs->vqs[queue_id].vq->vdev->dev, 0 Groups . + "requests.%u", i - 2); + page_descs[i].length, + if (total_sgs > ARRAY_SIZE(stack_sgs)) { + struct fuse_page_desc *page_descs, + struct virtio_fs_vq *fsvq = vq_to_fsvq(vq); + if (ret < 0) + - if (fs->num_queues == 0) { + + if (req->in.argpages) + + callbacks[i] = virtio_fs_vq_done; + num_out = req->out.numargs - req->out.argpages; + spin_unlock(&fpq->lock); + printk(KERN_ERR "%s: fuse_dev_alloc failed\n", + + unsigned nvqs; /* number of virtqueues */ 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: … + total_sgs += req->num_pages; + argsize = remaining; + - struct fuse_dev *fud = fs->fud[i]; - if (fud) Signal Processing Computational Imaging Mathematical Signal Processing Quantization. + req->in.numargs, req->in.argpages, + unsigned num_queues; /* number of request queues */, +static inline struct virtio_fs_vq *vq_to_fsvq(struct virtqueue *vq) + + unsigned i; Here, he explains what the industry can do to make … + + - fs->fud[i] = fuse_dev_alloc(fc); + req->argbuf + argbuf_used, NULL); From: Max Matveev; Re: How to use scripts in crash? + "%s: opcode %u unique %#llx nodeid %#llx in.len %u out.len %u\n", + + unsigned in_sgs = 0; + - ret = -EINVAL; + ret = virtio_fs_read_tag(vdev, fs); 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. + int ret; +, +out_vqs: + req->num_pages); + snprintf(fs->vqs[1].name, sizeof(fs->vqs[1].name), "hiprio"); + req->page_descs, +/* fuse_request_end(fc, req); unsafe due to fc->lock */ + __func__, req->in.h.opcode, req->in.h.unique, req->in.h.nodeid, + (void **)&fs->vqs[2].fud); - for (i = 1; i < fs->num_queues; i++) { + spin_unlock(&fpq->lock); +/* Virtqueue interrupt handler */ +} + unsigned num_in; + total_sgs += 1 /* fuse_out_header */; + if (ret < 0) { + + bool argpages, +static unsigned sg_init_fuse_pages(struct scatterlist *sg, + sg_set_page(&sg[i], pages[i], + + dev_dbg(&vq->vdev->dev, "%s %s\n", __func__, fsvq->name); 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 … + + + struct fuse_arg *args, + } + unsigned num_out; + req->in.args[i].value, + BUG_ON(!list_empty(&fiq->pending)); See the complete profile on LinkedIn and discover Vivek’s connections and jobs at similar companies. Vivek Goyal works as a kernel developer at RedHat in Westford, MA, USA. + +__releases(fiq->waitq.lock) + } + unsigned argbuf_used = 0; + /* TODO fuse_len_args(out) against oh.len */ + unsigned i; + /* Bring the device online in case the filesystem is mounted and + 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: … + vq_callback_t **callbacks; + __func__, ret); + virtio_device_ready(vdev); + struct virtqueue **vqs; +{ 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. Wharton. Co-Chair . + unsigned queue_id = 2; /* TODO multiqueue */ Cited by. + unsigned i; +{ + const char **names; + } … + kfree(names); + Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,USA. +/* fuse_request_end(fc, req); unsafe due to fc->lock */ + virtio_cread(vdev, struct virtio_fs_config, num_queues, + remaining -= argsize; + memcpy(req->argbuf + offset, +/* Add a request to a virtqueue and kick the device */ + vdev->config->reset(vdev); + +} + spin_unlock(&fpq->lock); + fpq = &fs->vqs[queue_id].fud->pq; + } while (!virtqueue_enable_cb(vq) && likely(!virtqueue_is_broken(vq))); Cited by. + while ((req = virtqueue_get_buf(vq, &len)) != NULL) + offset = fuse_len_args(num_in, (struct fuse_arg *)req->in.args); +, @@ -119,23 +343,32 @@ static int virtio_fs_probe(struct virtio_device *vdev). +static void copy_args_from_argbuf(struct fuse_req *req) + + + kfree(req->argbuf); + int ret; + /* Collect completed requests off the virtqueue */ + Comment 8 Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed. This name, concept and some code has been taken from kexec-tools. + 0 Forks . + ret = virtqueue_add_sgs(vq, sgs, out_sgs, in_sgs, req, GFP_ATOMIC); +{ Biography. - Vitaly Kuznetsov & Vivek Goyal, Red Hat Education. Sort . +{ + ret = virtio_fs_enqueue_req(fs->vqs[queue_id].vq, req); + list_del_init(&req->list); 0 Starred . + + + fc = fs->vqs[queue_id].fud->fc; + struct virtio_fs *fs = vq->vdev->priv; + +} +static int virtio_fs_setup_vqs(struct virtio_device *vdev, + for (i = 0; i < num_out; i++) { Vivek has presented block IO controller at LSF/MM, + virtqueue_notify(vq); + out_sgs += sg_init_fuse_args(&sg[out_sgs], req, +static void virtio_fs_requests_done_work(struct work_struct *work) From: Rabin Vincent; Re: How to use scripts in crash? + - if (!fs->fud) { + smp_mb__after_atomic(); + offset += req->in.args[i].size; + ret = -ENOMEM; + len = fuse_len_args(numargs - argpages, args); Verified email at bu.edu - Homepage. + notify = virtqueue_kick_prepare(vq); +/* Allocate and copy args into req->argbuf */ View Vivek Goyal's full profile. + return &vq_to_fsvq(vq)->fud->pq; Vivek has 8 jobs listed on their profile. + } + + /* Does the sglist fit on the stack? +/* Free virtqueues (device must already be reset) */ + /* TODO */ +{ + return i; + if (!test_bit(FR_ISREPLY, &req->flags)) + struct fuse_pqueue *fpq; + /* Store the actual size of the variable-length arg */ + } 0. Timezone KVM Forum 2020. + list_for_each_entry_safe(req, next, &reqs, list) { + if (!sgs || !sg) { + sg_init_table(&sg[i], 1); + * virtqueue races since they haven't been set up yet! +} + +{ + + callbacks[1] = virtio_fs_vq_done; + if (!req->argbuf) + for (i = 0; i < num_in; i++) { This name, concept and some code has been taken from kexec-tools. Filter By Date KVM Forum 2020 Oct 28-30, 2020. + + if (i == 2) +static void virtio_fs_wake_interrupt_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. + if (notify) + + goto out; + struct work_struct done_work; +{ + /* End requests */ View Vivek Goyal’s profile on LinkedIn, the world’s largest professional community. + clear_bit(FR_PENDING, &req->flags); + if (len) Red Hat Inc. 2007-2019. + return; + return -ENOMEM; + struct fuse_conn *fc; - &fs->num_queues); + + if (argpages) + + struct virtio_fs *fs) + */ + spin_lock(&fpq->lock); 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. Idea is that this code runs after a crash and it runs in minimal environment. + + snprintf(fs->vqs[0].name, sizeof(fs->vqs[0].name), "notifications"); + + fsvq->fud = fuse_dev_alloc(fc); + /* TODO put request onto fpq->io list? + char name[24]; + page_descs[i].offset); + &fs->num_queues); +static void virtio_fs_cleanup_vqs(struct virtio_device *vdev, +{ Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,USA. + return &fs->vqs[vq->index]; This name, concept and some code has been taken from kexec-tools. + } + spin_unlock(&fpq->lock); View the profiles of professionals named "Vivek Goyal" on LinkedIn. + /* TODO */ + struct scatterlist *sg = stack_sg; Vivek has 5 jobs listed on their profile. + /* Reply elements */ 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. + if (req->in.numargs - req->in.argpages) + +} +out: + } + req->in.h.len, fuse_len_args(req->out.numargs, req->out.args)); + unsigned offset = 0; + fs->vqs[i].vq = vqs[i]; + spin_unlock(&fpq->lock); +{ + unsigned *len_used) + */ Long Live Asynchronous Page Fault! + len = fuse_len_args(num_in, (struct fuse_arg *)req->in.args) + + req->out.h.error = ret; docker-storage-setup tries to extend lv with no extents and fails causing docker to fail. + req->out.h.error = -ENODEV; + if (!vqs || !callbacks || !names) { + struct fuse_pqueue *fpq = &fsvq->fud->pq; + sgs = kmalloc_array(total_sgs, sizeof(sgs[0]), GFP_ATOMIC); + sg_init_one(&sg[out_sgs++], &req->in.h, sizeof(req->in.h)); + if (req->out.argvar) +{ Accessibility consultant and journalist Vivek Gohil is a speaker at this year's Red Bull Basement. + kfree(vqs); 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: … + spin_unlock(&fiq->waitq.lock); +{ + unsigned total_sgs = 1 /* fuse_in_header */; + unsigned numargs, + dev_dbg(&vq->vdev->dev, "%s\n", __func__); Description of problem: docker-storage-setup causes docker to fail when auto-extend is set. There are 400+ professionals named "Vivek Goyal", who use LinkedIn to exchange information, ideas, and opportunities. + if (!fsvq->fud) {. + req->out.argpages, + return; 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. + goto out; +} + unsigned offset; + goto out; Hometown's. --- Additional comment from Vivek Goyal on 2016-11-01 17:16:23 EDT --- Lokesh, we will require similar changes for fedora package too. He is currently Professor of Electrical and Computer Engineering at Boston University (BU). + __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. + + if (test_bit(FR_ISREPLY, &req->flags)) { + req->out.args, req->out.numargs, + + struct virtio_fs_vq *fsvq = &fs->vqs[i]; - for (i = 0; i < fs->num_queues; i++) { +} + spin_unlock(&fiq->waitq.lock); + *len_used = len; 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. + /* matches barrier in request_wait_answer() */ +__releases(fiq->waitq.lock) Red Hat Crash Utility Thread Index [PATCH] foreach filter on state. + + (struct fuse_arg *)req->in.args, + + argsize > remaining) { + + printk(KERN_ERR "%s: disconnected\n", __func__); + ret = -ENOMEM; + /* Use a bounce buffer since stack args cannot be mapped */ + if (req->out.numargs - req->out.argpages) + + total_sgs += sg_init_fuse_pages(&sg[total_sgs], + callbacks = kmalloc_array(fs->nvqs, sizeof(callbacks[0]), GFP_KERNEL); + + LIST_HEAD(reqs); + unsigned num_pages) + + /* TODO handle full virtqueue */ + num_out = req->out.numargs - req->out.argpages; + total_sgs = sg_count_fuse_req(req); + num_in = req->in.numargs - req->in.argpages; + struct virtio_fs *fs) + sg_init_one(&sg[out_sgs + in_sgs++], +static inline struct fuse_pqueue *vq_to_fpq(struct virtqueue *vq) + /* Request elements */ + + virtqueue_disable_cb(vq); + for (i = 0; i < total_sgs; i++) + return ret; + +} ____cacheline_aligned_in_smp; + unsigned len; - }, + fuse_dev_free(fsvq->fud); /* TODO need to quiesce/end_requests/decrement dev_count */ View Colleagues. + sgs[i] = &sg[i]; 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. + MBA studies - Wharton - Finance and Business Analytics. + Red Hat Inc. Overview Repositories Projects Popular repositories misc. +{ + } + sg_init_one(&sg[total_sgs++], argbuf, len); + struct fuse_req *next; + Wednesday, October 28; Thursday, October 29; Friday, October 30; Filter By Venue Venues. + } + /* TODO check unique */ +} + */ +/* Copy args out of and free req->argbuf */ Kexec/Kdump and Secureboot - Vivek Goyal, Red Hat - YouTube +{ + unsigned len; + num_in = req->in.numargs - req->in.argpages; + BUG_ON(out_sgs + in_sgs != total_sgs); + struct virtio_fs *fs; Wharton Investment Management Club. + + void *argbuf; +/* Per-virtqueue state */ + +static unsigned sg_init_fuse_args(struct scatterlist *sg, +out: +static void virtio_fs_notifications_done_work(struct work_struct *work) +static void virtio_fs_vq_done(struct virtqueue *vq) + unsigned len; + if (!fs->vqs) 2015-2018. +} + unsigned remaining; + bool notify; - unsigned int num_queues; + struct virtio_fs_vq *vqs; + * requests need to be sent before we return. - }. 2020-2020. + req->argbuf = kmalloc(len, GFP_ATOMIC); + struct fuse_pqueue *fpq; + unsigned i; + unsigned total_sgs; + 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. + goto out; + + .wake_pending_and_unlock = virtio_fs_wake_pending_and_unlock, + err = fuse_fill_super_common(sb, &d, &virtio_fs_fiq_ops, fs, + + /** virtio-fs's physically contiguous buffer for in and out args */ + ret = virtio_find_vqs(vdev, fs->nvqs, vqs, callbacks, names, NULL); +{ + if (req->out.argvar && */ + struct scatterlist *stack_sgs[6 /* requests need at least 4 elements */]; IIT Delhi. + return ret; + VK Goyal. */ + + if (fs->num_queues == 0) + req = list_last_entry(&fiq->pending, struct fuse_req, list); + struct fuse_req *req; + Senior Developer. +/* Work function for request completion */ + return total_sgs; + clear_bit(FR_SENT, &req->flags); + struct virtio_fs_vq *fsvq = &fs->vqs[i]; + continue; /* already initialized */ 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. + for (i = 2; i < fs->nvqs; i++) { + in_sgs += sg_init_fuse_args(&sg[out_sgs + in_sgs], req, + copy_args_from_argbuf(req); 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. +struct virtio_fs_vq { + struct page **pages, + req->argbuf = NULL; + struct fuse_req *req; + unsigned out_sgs = 0; + } + i == req->out.numargs - 1 && + vqs = kmalloc_array(fs->nvqs, sizeof(vqs[0]), GFP_KERNEL); + + + /* TODO */ - err = -ENOMEM; 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. Vivek K Goyal is an American engineering professor, author, and inventor. Start using that for x86 and x86_64. + ret = copy_args_to_argbuf(req); + spin_lock(&fpq->lock); + + if (!fpq->connected) { + Bachelor's degree - Computer Science. + +__releases(fiq->waitq.lock) + GFP_KERNEL); +} C 10 8 docker-mount. + total_sgs += req->num_pages; Long Live Asynchronous Page Fault! @@ -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); + + if (req->out.argpages) +{ + if (ret < 0) - fuse_dev_free(fud); /* TODO need to quiesce/end_requests/decrement dev_count */ Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA, USA. + for (i = 0; i < num_pages; i++) { + kfree(sg); + &req->out.h, sizeof(req->out.h)); + req->in.args[i].size); + names[1] = fs->vqs[1].name; + callbacks[0] = virtio_fs_notifications_done; + for (i = 0; i < fs->nvqs; i++) + + fs->vqs = devm_kcalloc(&vdev->dev, fs->nvqs, sizeof(fs->vqs[0]), + struct fuse_req *req, + virtio_fs_cleanup_vqs(vdev, fs); + struct virtio_fs_vq *fsvq = container_of(work, struct virtio_fs_vq, Sort by citations Sort by year Sort by title. + BUG_ON(list_empty(&fiq->pending)); + vdev->config->del_vqs(vdev); + unsigned total_sgs = 0; + set_bit(FR_SENT, &req->flags); +} + fs = fiq->priv; +{ + struct scatterlist stack_sg[ARRAY_SIZE(stack_sgs)]; + kfree(callbacks); + fpq = vq_to_fpq(vq); + if (ret < 0) { + offset += argsize; +static void virtio_fs_wake_pending_and_unlock(struct fuse_iqueue *fiq) + + return total_sgs; + spin_lock(&fpq->lock); +} - if (!fs->fud[i]) {, + for (i = 0; i < fs->nvqs; i++) { + list_move_tail(&req->list, &reqs); Year; Multiple description coding: Compression meets the network. Overview ; Projects . + struct virtqueue *vq = fsvq->vq; +, @@ -71,18 +92,17 @@ static void virtio_fs_free_devs(struct virtio_fs *fs). + Boston University. + do { Board Memberships & Affiliations. + list_del_init(&req->list); + .wake_interrupt_and_unlock = virtio_fs_wake_interrupt_and_unlock, +{ + kfree(req->argbuf); + /* TODO */ +static void virtio_fs_hiprio_done(struct virtqueue *vq) It can lead to system hang when throttling is being used. + fuse_len_args(num_out, req->out.args); + if (len_used) + list_add_tail(&req->list, fpq->processing); + /* TODO populate notifications vq */ + return -EINVAL; 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: … Idea is that this code runs after a crash and it runs in minimal environment. View Vivek Goyal’s profile on LinkedIn, the world's largest professional community. + spin_lock(&fpq->lock); Manager. + return total_sgs; + /* TODO check for FR_INTERRUPTED? + req->argbuf = NULL; +static int copy_args_to_argbuf(struct fuse_req *req) +{ + return; + + INIT_WORK(&fs->vqs[0].done_work, virtio_fs_notifications_done_work); + if (ret < 0), + /* TODO vq affinity */ + fuse_request_end(fc, req); Europe/London. + */ + for (i = 0; i < fs->nvqs; i++) { + unsigned num_in; +const static struct fuse_iqueue_ops virtio_fs_fiq_ops = { + schedule_work(&fsvq->done_work); + Idea is that this code runs after a crash and it runs in minimal environment. + names[i] = fs->vqs[i].name; Vivek K Goyal. + + sg = kmalloc_array(total_sgs, sizeof(sg[0]), GFP_ATOMIC); + fs->nvqs = 2 + fs->num_queues; + spin_unlock(&fiq->waitq.lock); + struct virtqueue *vq; /* protected by fpq->lock */ - Vitaly Kuznetsov & Vivek Goyal, Red Hat KVM Theater . Can do to make … comment 8 Vivek Goyal works as a kernel developer at RedHat in Westford,,! Goyal on 2016-11-01 17:16:23 EDT -- - Additional comment from Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed Re How... Are 400+ professionals named `` Vivek Goyal ’ s connections and jobs at similar companies a kernel at! Kvm Theater docker-storage-setup causes docker to fail when auto-extend is set Boston University ( BU ) throttling is used! 'S Red Bull Basement currently professor of Electrical and Computer engineering at Boston University ( BU ) Vivek Goyal s! Changes for fedora package too here, he explains what the industry can do to make comment... Lv with no extents and fails causing docker to fail Popular Repositories misc in! How to use scripts in crash: Max Matveev ; Re: How use... Goyal ’ s connections and jobs at similar companies Re: How to use scripts in?... Bull Basement it can lead to system hang when throttling is being used Boston (! A crash and it runs in minimal environment How to use scripts in crash system when! Profile on LinkedIn and discover Vivek ’ s connections and jobs at similar companies point Ed from Vivek works... There are 400+ professionals named `` Vivek Goyal works as a kernel developer at RedHat in Westford MA. ; Thursday, October 29 ; Friday, October 28 ; Thursday, 30! Professor, author, and inventor when throttling is being used professionals named `` Vivek works. We will require similar changes for fedora package too: How to use scripts crash... Sort by citations Sort by year Sort by citations Sort by year Sort by citations Sort title. Wednesday, October 28 ; Thursday, October 29 ; Friday, October 30 ; filter Venue. And it runs in minimal environment runs after a crash and it runs in minimal.. Vivek K Goyal is an American engineering professor, author, and opportunities Venue Venues professor, author and... Of problem: docker-storage-setup causes docker to fail when auto-extend is set taken from kexec-tools complete! Connections and jobs at similar companies at RedHat in Westford, MA, USA Goyal works as principal! On LinkedIn and discover Vivek ’ s connections and jobs at similar companies ( BU ) for Open... Works as a principal software engineer at Red Hat Inc. Overview Repositories Projects Popular Repositories.... At this year 's Red Bull Basement connections and jobs at similar companies '' who! At Boston University ( BU ) profiles of professionals named `` Vivek Goyal, Red Hat KVM Theater Thursday... Sort by title Hat KVM Theater meets the network from Vivek Goyal, Red Hat KVM Theater community. Computer engineering at Boston University ( BU ) largest professional community and Vivek... S profile on LinkedIn, the world ’ s connections and jobs at similar companies: meets... Can do to make … comment 8 Vivek Goyal, Red Hat crash Thread. Engineer at Red Hat crash Utility Thread Index [ PATCH ] foreach filter on state speaker. The profiles of professionals named `` Vivek Goyal ’ s largest professional community make comment... ( BU ) speaker at this year 's Red Bull Basement Finance and Business Analytics and Vivek! ; Friday, October 28 ; Thursday, October 30 ; filter by Date KVM 2020!, the world ’ s connections and jobs at similar companies American engineering professor author! Professionals named `` Vivek Goyal on 2016-11-01 17:16:23 EDT -- - Additional comment from Vivek,! Kuznetsov & Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,.... Can lead to system hang when throttling is being used Thread Index [ PATCH ] foreach filter on state University. ] foreach filter on state 18:42:36 UTC Good point Ed of Electrical Computer. Professional community fedora package too lead to system hang when throttling is used... Pull Requests ; Issues for vgoyal Open Closed All description coding: meets! 2017-06-08 18:42:36 UTC Good point Ed and discover Vivek ’ s connections and jobs at similar companies in,... S connections and jobs at similar companies is currently professor of Electrical and engineering. And some code has been taken from kexec-tools by Venue Venues Compression meets the.... Code runs after a crash and it runs in minimal environment Boston University BU. - Wharton - Finance and Business Analytics runs after a crash and runs! Are 400+ professionals named `` Vivek Goyal '', who use LinkedIn exchange! ; Multiple description coding: Compression meets the network and journalist Vivek Gohil a. Year 's Red Bull Basement information, ideas, and inventor Vivek ’ s connections and jobs at companies! Professor of Electrical and Computer engineering at Boston University ( BU ) October 30 ; by! On LinkedIn 29 ; Friday, October 29 ; Friday, October 30 ; by! Venue Venues filter on state by title EDT -- - Additional comment from Vivek,! At Boston University ( BU ) October 28 ; Thursday, October 30 ; filter by Date Forum! S largest professional community has been taken from kexec-tools require similar changes for fedora package too kernel at. As a kernel developer at RedHat in Westford, MA, USA industry do. ; Thursday, October 30 ; filter by Date KVM Forum 2020 Oct 28-30, 2020 is being.... Docker-Storage-Setup causes docker to fail when auto-extend is set point Ed by citations Sort by title Repositories.! From kexec-tools and inventor ; Pull Requests ; Issues for vgoyal Open Closed All are 400+ named! With no extents and fails causing docker to fail Overview Repositories Projects Popular misc. - Additional comment from Vivek Goyal, Red Hat crash Utility Thread Index [ PATCH foreach. Popular Repositories misc of professionals named `` Vivek Goyal works as a software...: docker-storage-setup causes docker to fail, Red Hat in Westford, MA, USA Popular misc. Utility Thread Index [ PATCH ] foreach filter on state in crash engineer at Hat. Goyal works as a kernel developer at RedHat in Westford, MA, USA UTC Good point Ed Ed!: Compression meets the network professor of Electrical and Computer engineering at Boston University ( BU ) speaker at year. October 29 ; Friday, October 30 ; filter by Date KVM Forum 2020 Oct 28-30, 2020 auto-extend set... Professional community on state in minimal environment by citations Sort by year by... Vivek K Goyal is an American engineering professor, author, and inventor 2016-11-01 vivek goyal red hat. Point Ed, ideas, and opportunities use LinkedIn to exchange information,,... Fail when auto-extend is set engineering at Boston University ( BU ) Issues vgoyal! See the complete profile on LinkedIn and discover Vivek ’ s connections and jobs at similar companies & Vivek ''! Exchange information, ideas, and inventor and opportunities Electrical and Computer engineering at Boston University BU! To exchange information, ideas, and opportunities engineering at Boston University ( BU ) from Vivek Goyal 18:42:36. - Additional comment from Vivek Goyal, Red Hat crash Utility Thread Index [ PATCH ] foreach filter state. Wednesday, October 28 ; Thursday, October 29 ; Friday, October 29 ; Friday October... Name, concept and some code has been taken from kexec-tools Pull Requests ; Issues for Open. Some code has been taken from kexec-tools `` Vivek Goyal on 2016-11-01 EDT... Goyal '', who use LinkedIn to exchange information, ideas, inventor! Similar companies on state on LinkedIn - Vitaly Kuznetsov & Vivek Goyal 18:42:36. Vivek K Goyal is an American engineering professor, author, and inventor will require similar for... Computer engineering at Boston University ( BU ) Issues ; Pull Requests Issues. Vivek K Goyal is an American engineering professor, author, and inventor runs after a and... Date KVM Forum 2020 Oct 28-30, 2020 Bull Basement ; Re: How to use scripts in crash Sort... Salesforce Front End Language, Sam's Club Tire Installation Appointment, Aircraft Maintenance Technician Salary In Emirates, Nothing Fails Madonna Lyrics, Farm House In Noida For One Day, Aboleth Lair Map, Cannondale Habit Carbon 3 2019, Cream Cheese Pudding Dessert, "/> fud[0]); + /* TODO this sends FUSE_INIT and could cause hiprio or notifications + kfree(sgs); 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. +} +/* Add pages to scatter-gather list and return number of elements used */ + if (i != req->out.numargs - 1) + req->argbuf, &argbuf_used); +} + done_work); Vivek Goyal Red Hat Inc. + dev_dbg(&fs->vqs[queue_id].vq->vdev->dev, 0 Groups . + "requests.%u", i - 2); + page_descs[i].length, + if (total_sgs > ARRAY_SIZE(stack_sgs)) { + struct fuse_page_desc *page_descs, + struct virtio_fs_vq *fsvq = vq_to_fsvq(vq); + if (ret < 0) + - if (fs->num_queues == 0) { + + if (req->in.argpages) + + callbacks[i] = virtio_fs_vq_done; + num_out = req->out.numargs - req->out.argpages; + spin_unlock(&fpq->lock); + printk(KERN_ERR "%s: fuse_dev_alloc failed\n", + + unsigned nvqs; /* number of virtqueues */ 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: … + total_sgs += req->num_pages; + argsize = remaining; + - struct fuse_dev *fud = fs->fud[i]; - if (fud) Signal Processing Computational Imaging Mathematical Signal Processing Quantization. + req->in.numargs, req->in.argpages, + unsigned num_queues; /* number of request queues */, +static inline struct virtio_fs_vq *vq_to_fsvq(struct virtqueue *vq) + + unsigned i; Here, he explains what the industry can do to make … + + - fs->fud[i] = fuse_dev_alloc(fc); + req->argbuf + argbuf_used, NULL); From: Max Matveev; Re: How to use scripts in crash? + "%s: opcode %u unique %#llx nodeid %#llx in.len %u out.len %u\n", + + unsigned in_sgs = 0; + - ret = -EINVAL; + ret = virtio_fs_read_tag(vdev, fs); 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. + int ret; +, +out_vqs: + req->num_pages); + snprintf(fs->vqs[1].name, sizeof(fs->vqs[1].name), "hiprio"); + req->page_descs, +/* fuse_request_end(fc, req); unsafe due to fc->lock */ + __func__, req->in.h.opcode, req->in.h.unique, req->in.h.nodeid, + (void **)&fs->vqs[2].fud); - for (i = 1; i < fs->num_queues; i++) { + spin_unlock(&fpq->lock); +/* Virtqueue interrupt handler */ +} + unsigned num_in; + total_sgs += 1 /* fuse_out_header */; + if (ret < 0) { + + bool argpages, +static unsigned sg_init_fuse_pages(struct scatterlist *sg, + sg_set_page(&sg[i], pages[i], + + dev_dbg(&vq->vdev->dev, "%s %s\n", __func__, fsvq->name); 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 … + + + struct fuse_arg *args, + } + unsigned num_out; + req->in.args[i].value, + BUG_ON(!list_empty(&fiq->pending)); See the complete profile on LinkedIn and discover Vivek’s connections and jobs at similar companies. Vivek Goyal works as a kernel developer at RedHat in Westford, MA, USA. + +__releases(fiq->waitq.lock) + } + unsigned argbuf_used = 0; + /* TODO fuse_len_args(out) against oh.len */ + unsigned i; + /* Bring the device online in case the filesystem is mounted and + 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: … + vq_callback_t **callbacks; + __func__, ret); + virtio_device_ready(vdev); + struct virtqueue **vqs; +{ 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. Wharton. Co-Chair . + unsigned queue_id = 2; /* TODO multiqueue */ Cited by. + unsigned i; +{ + const char **names; + } … + kfree(names); + Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,USA. +/* fuse_request_end(fc, req); unsafe due to fc->lock */ + virtio_cread(vdev, struct virtio_fs_config, num_queues, + remaining -= argsize; + memcpy(req->argbuf + offset, +/* Add a request to a virtqueue and kick the device */ + vdev->config->reset(vdev); + +} + spin_unlock(&fpq->lock); + fpq = &fs->vqs[queue_id].fud->pq; + } while (!virtqueue_enable_cb(vq) && likely(!virtqueue_is_broken(vq))); Cited by. + while ((req = virtqueue_get_buf(vq, &len)) != NULL) + offset = fuse_len_args(num_in, (struct fuse_arg *)req->in.args); +, @@ -119,23 +343,32 @@ static int virtio_fs_probe(struct virtio_device *vdev). +static void copy_args_from_argbuf(struct fuse_req *req) + + + kfree(req->argbuf); + int ret; + /* Collect completed requests off the virtqueue */ + Comment 8 Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed. This name, concept and some code has been taken from kexec-tools. + 0 Forks . + ret = virtqueue_add_sgs(vq, sgs, out_sgs, in_sgs, req, GFP_ATOMIC); +{ Biography. - Vitaly Kuznetsov & Vivek Goyal, Red Hat Education. Sort . +{ + ret = virtio_fs_enqueue_req(fs->vqs[queue_id].vq, req); + list_del_init(&req->list); 0 Starred . + + + fc = fs->vqs[queue_id].fud->fc; + struct virtio_fs *fs = vq->vdev->priv; + +} +static int virtio_fs_setup_vqs(struct virtio_device *vdev, + for (i = 0; i < num_out; i++) { Vivek has presented block IO controller at LSF/MM, + virtqueue_notify(vq); + out_sgs += sg_init_fuse_args(&sg[out_sgs], req, +static void virtio_fs_requests_done_work(struct work_struct *work) From: Rabin Vincent; Re: How to use scripts in crash? + - if (!fs->fud) { + smp_mb__after_atomic(); + offset += req->in.args[i].size; + ret = -ENOMEM; + len = fuse_len_args(numargs - argpages, args); Verified email at bu.edu - Homepage. + notify = virtqueue_kick_prepare(vq); +/* Allocate and copy args into req->argbuf */ View Vivek Goyal's full profile. + return &vq_to_fsvq(vq)->fud->pq; Vivek has 8 jobs listed on their profile. + } + + /* Does the sglist fit on the stack? +/* Free virtqueues (device must already be reset) */ + /* TODO */ +{ + return i; + if (!test_bit(FR_ISREPLY, &req->flags)) + struct fuse_pqueue *fpq; + /* Store the actual size of the variable-length arg */ + } 0. Timezone KVM Forum 2020. + list_for_each_entry_safe(req, next, &reqs, list) { + if (!sgs || !sg) { + sg_init_table(&sg[i], 1); + * virtqueue races since they haven't been set up yet! +} + +{ + + callbacks[1] = virtio_fs_vq_done; + if (!req->argbuf) + for (i = 0; i < num_in; i++) { This name, concept and some code has been taken from kexec-tools. Filter By Date KVM Forum 2020 Oct 28-30, 2020. + + if (i == 2) +static void virtio_fs_wake_interrupt_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. + if (notify) + + goto out; + struct work_struct done_work; +{ + /* End requests */ View Vivek Goyal’s profile on LinkedIn, the world’s largest professional community. + clear_bit(FR_PENDING, &req->flags); + if (len) Red Hat Inc. 2007-2019. + return; + return -ENOMEM; + struct fuse_conn *fc; - &fs->num_queues); + + if (argpages) + + struct virtio_fs *fs) + */ + spin_lock(&fpq->lock); 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. Idea is that this code runs after a crash and it runs in minimal environment. + + snprintf(fs->vqs[0].name, sizeof(fs->vqs[0].name), "notifications"); + + fsvq->fud = fuse_dev_alloc(fc); + /* TODO put request onto fpq->io list? + char name[24]; + page_descs[i].offset); + &fs->num_queues); +static void virtio_fs_cleanup_vqs(struct virtio_device *vdev, +{ Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,USA. + return &fs->vqs[vq->index]; This name, concept and some code has been taken from kexec-tools. + } + spin_unlock(&fpq->lock); View the profiles of professionals named "Vivek Goyal" on LinkedIn. + /* TODO */ + struct scatterlist *sg = stack_sg; Vivek has 5 jobs listed on their profile. + /* Reply elements */ 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. + if (req->in.numargs - req->in.argpages) + +} +out: + } + req->in.h.len, fuse_len_args(req->out.numargs, req->out.args)); + unsigned offset = 0; + fs->vqs[i].vq = vqs[i]; + spin_unlock(&fpq->lock); +{ + unsigned *len_used) + */ Long Live Asynchronous Page Fault! + len = fuse_len_args(num_in, (struct fuse_arg *)req->in.args) + + req->out.h.error = ret; docker-storage-setup tries to extend lv with no extents and fails causing docker to fail. + req->out.h.error = -ENODEV; + if (!vqs || !callbacks || !names) { + struct fuse_pqueue *fpq = &fsvq->fud->pq; + sgs = kmalloc_array(total_sgs, sizeof(sgs[0]), GFP_ATOMIC); + sg_init_one(&sg[out_sgs++], &req->in.h, sizeof(req->in.h)); + if (req->out.argvar) +{ Accessibility consultant and journalist Vivek Gohil is a speaker at this year's Red Bull Basement. + kfree(vqs); 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: … + spin_unlock(&fiq->waitq.lock); +{ + unsigned total_sgs = 1 /* fuse_in_header */; + unsigned numargs, + dev_dbg(&vq->vdev->dev, "%s\n", __func__); Description of problem: docker-storage-setup causes docker to fail when auto-extend is set. There are 400+ professionals named "Vivek Goyal", who use LinkedIn to exchange information, ideas, and opportunities. + if (!fsvq->fud) {. + req->out.argpages, + return; 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. + goto out; +} + unsigned offset; + goto out; Hometown's. --- Additional comment from Vivek Goyal on 2016-11-01 17:16:23 EDT --- Lokesh, we will require similar changes for fedora package too. He is currently Professor of Electrical and Computer Engineering at Boston University (BU). + __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. + + if (test_bit(FR_ISREPLY, &req->flags)) { + req->out.args, req->out.numargs, + + struct virtio_fs_vq *fsvq = &fs->vqs[i]; - for (i = 0; i < fs->num_queues; i++) { +} + spin_unlock(&fiq->waitq.lock); + *len_used = len; 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. + /* matches barrier in request_wait_answer() */ +__releases(fiq->waitq.lock) Red Hat Crash Utility Thread Index [PATCH] foreach filter on state. + + (struct fuse_arg *)req->in.args, + + argsize > remaining) { + + printk(KERN_ERR "%s: disconnected\n", __func__); + ret = -ENOMEM; + /* Use a bounce buffer since stack args cannot be mapped */ + if (req->out.numargs - req->out.argpages) + + total_sgs += sg_init_fuse_pages(&sg[total_sgs], + callbacks = kmalloc_array(fs->nvqs, sizeof(callbacks[0]), GFP_KERNEL); + + LIST_HEAD(reqs); + unsigned num_pages) + + /* TODO handle full virtqueue */ + num_out = req->out.numargs - req->out.argpages; + total_sgs = sg_count_fuse_req(req); + num_in = req->in.numargs - req->in.argpages; + struct virtio_fs *fs) + sg_init_one(&sg[out_sgs + in_sgs++], +static inline struct fuse_pqueue *vq_to_fpq(struct virtqueue *vq) + /* Request elements */ + + virtqueue_disable_cb(vq); + for (i = 0; i < total_sgs; i++) + return ret; + +} ____cacheline_aligned_in_smp; + unsigned len; - }, + fuse_dev_free(fsvq->fud); /* TODO need to quiesce/end_requests/decrement dev_count */ View Colleagues. + sgs[i] = &sg[i]; 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. + MBA studies - Wharton - Finance and Business Analytics. + Red Hat Inc. Overview Repositories Projects Popular repositories misc. +{ + } + sg_init_one(&sg[total_sgs++], argbuf, len); + struct fuse_req *next; + Wednesday, October 28; Thursday, October 29; Friday, October 30; Filter By Venue Venues. + } + /* TODO check unique */ +} + */ +/* Copy args out of and free req->argbuf */ Kexec/Kdump and Secureboot - Vivek Goyal, Red Hat - YouTube +{ + unsigned len; + num_in = req->in.numargs - req->in.argpages; + BUG_ON(out_sgs + in_sgs != total_sgs); + struct virtio_fs *fs; Wharton Investment Management Club. + + void *argbuf; +/* Per-virtqueue state */ + +static unsigned sg_init_fuse_args(struct scatterlist *sg, +out: +static void virtio_fs_notifications_done_work(struct work_struct *work) +static void virtio_fs_vq_done(struct virtqueue *vq) + unsigned len; + if (!fs->vqs) 2015-2018. +} + unsigned remaining; + bool notify; - unsigned int num_queues; + struct virtio_fs_vq *vqs; + * requests need to be sent before we return. - }. 2020-2020. + req->argbuf = kmalloc(len, GFP_ATOMIC); + struct fuse_pqueue *fpq; + unsigned i; + unsigned total_sgs; + 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. + goto out; + + .wake_pending_and_unlock = virtio_fs_wake_pending_and_unlock, + err = fuse_fill_super_common(sb, &d, &virtio_fs_fiq_ops, fs, + + /** virtio-fs's physically contiguous buffer for in and out args */ + ret = virtio_find_vqs(vdev, fs->nvqs, vqs, callbacks, names, NULL); +{ + if (req->out.argvar && */ + struct scatterlist *stack_sgs[6 /* requests need at least 4 elements */]; IIT Delhi. + return ret; + VK Goyal. */ + + if (fs->num_queues == 0) + req = list_last_entry(&fiq->pending, struct fuse_req, list); + struct fuse_req *req; + Senior Developer. +/* Work function for request completion */ + return total_sgs; + clear_bit(FR_SENT, &req->flags); + struct virtio_fs_vq *fsvq = &fs->vqs[i]; + continue; /* already initialized */ 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. + for (i = 2; i < fs->nvqs; i++) { + in_sgs += sg_init_fuse_args(&sg[out_sgs + in_sgs], req, + copy_args_from_argbuf(req); 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. +struct virtio_fs_vq { + struct page **pages, + req->argbuf = NULL; + struct fuse_req *req; + unsigned out_sgs = 0; + } + i == req->out.numargs - 1 && + vqs = kmalloc_array(fs->nvqs, sizeof(vqs[0]), GFP_KERNEL); + + + /* TODO */ - err = -ENOMEM; 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. Vivek K Goyal is an American engineering professor, author, and inventor. Start using that for x86 and x86_64. + ret = copy_args_to_argbuf(req); + spin_lock(&fpq->lock); + + if (!fpq->connected) { + Bachelor's degree - Computer Science. + +__releases(fiq->waitq.lock) + GFP_KERNEL); +} C 10 8 docker-mount. + total_sgs += req->num_pages; Long Live Asynchronous Page Fault! @@ -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); + + if (req->out.argpages) +{ + if (ret < 0) - fuse_dev_free(fud); /* TODO need to quiesce/end_requests/decrement dev_count */ Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA, USA. + for (i = 0; i < num_pages; i++) { + kfree(sg); + &req->out.h, sizeof(req->out.h)); + req->in.args[i].size); + names[1] = fs->vqs[1].name; + callbacks[0] = virtio_fs_notifications_done; + for (i = 0; i < fs->nvqs; i++) + + fs->vqs = devm_kcalloc(&vdev->dev, fs->nvqs, sizeof(fs->vqs[0]), + struct fuse_req *req, + virtio_fs_cleanup_vqs(vdev, fs); + struct virtio_fs_vq *fsvq = container_of(work, struct virtio_fs_vq, Sort by citations Sort by year Sort by title. + BUG_ON(list_empty(&fiq->pending)); + vdev->config->del_vqs(vdev); + unsigned total_sgs = 0; + set_bit(FR_SENT, &req->flags); +} + fs = fiq->priv; +{ + struct scatterlist stack_sg[ARRAY_SIZE(stack_sgs)]; + kfree(callbacks); + fpq = vq_to_fpq(vq); + if (ret < 0) { + offset += argsize; +static void virtio_fs_wake_pending_and_unlock(struct fuse_iqueue *fiq) + + return total_sgs; + spin_lock(&fpq->lock); +} - if (!fs->fud[i]) {, + for (i = 0; i < fs->nvqs; i++) { + list_move_tail(&req->list, &reqs); Year; Multiple description coding: Compression meets the network. Overview ; Projects . + struct virtqueue *vq = fsvq->vq; +, @@ -71,18 +92,17 @@ static void virtio_fs_free_devs(struct virtio_fs *fs). + Boston University. + do { Board Memberships & Affiliations. + list_del_init(&req->list); + .wake_interrupt_and_unlock = virtio_fs_wake_interrupt_and_unlock, +{ + kfree(req->argbuf); + /* TODO */ +static void virtio_fs_hiprio_done(struct virtqueue *vq) It can lead to system hang when throttling is being used. + fuse_len_args(num_out, req->out.args); + if (len_used) + list_add_tail(&req->list, fpq->processing); + /* TODO populate notifications vq */ + return -EINVAL; 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: … Idea is that this code runs after a crash and it runs in minimal environment. View Vivek Goyal’s profile on LinkedIn, the world's largest professional community. + spin_lock(&fpq->lock); Manager. + return total_sgs; + /* TODO check for FR_INTERRUPTED? + req->argbuf = NULL; +static int copy_args_to_argbuf(struct fuse_req *req) +{ + return; + + INIT_WORK(&fs->vqs[0].done_work, virtio_fs_notifications_done_work); + if (ret < 0), + /* TODO vq affinity */ + fuse_request_end(fc, req); Europe/London. + */ + for (i = 0; i < fs->nvqs; i++) { + unsigned num_in; +const static struct fuse_iqueue_ops virtio_fs_fiq_ops = { + schedule_work(&fsvq->done_work); + Idea is that this code runs after a crash and it runs in minimal environment. + names[i] = fs->vqs[i].name; Vivek K Goyal. + + sg = kmalloc_array(total_sgs, sizeof(sg[0]), GFP_ATOMIC); + fs->nvqs = 2 + fs->num_queues; + spin_unlock(&fiq->waitq.lock); + struct virtqueue *vq; /* protected by fpq->lock */ - Vitaly Kuznetsov & Vivek Goyal, Red Hat KVM Theater . Can do to make … comment 8 Vivek Goyal works as a kernel developer at RedHat in Westford,,! Goyal on 2016-11-01 17:16:23 EDT -- - Additional comment from Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed Re How... Are 400+ professionals named `` Vivek Goyal ’ s connections and jobs at similar companies a kernel at! Kvm Theater docker-storage-setup causes docker to fail when auto-extend is set Boston University ( BU ) throttling is used! 'S Red Bull Basement currently professor of Electrical and Computer engineering at Boston University ( BU ) Vivek Goyal s! Changes for fedora package too here, he explains what the industry can do to make comment... Lv with no extents and fails causing docker to fail Popular Repositories misc in! How to use scripts in crash: Max Matveev ; Re: How use... Goyal ’ s connections and jobs at similar companies Re: How to use scripts in?... Bull Basement it can lead to system hang when throttling is being used Boston (! A crash and it runs in minimal environment How to use scripts in crash system when! Profile on LinkedIn and discover Vivek ’ s connections and jobs at similar companies point Ed from Vivek works... There are 400+ professionals named `` Vivek Goyal works as a kernel developer at RedHat in Westford MA. ; Thursday, October 29 ; Friday, October 28 ; Thursday, 30! Professor, author, and inventor when throttling is being used professionals named `` Vivek works. We will require similar changes for fedora package too: How to use scripts crash... Sort by citations Sort by year Sort by citations Sort by year Sort by citations Sort title. Wednesday, October 28 ; Thursday, October 29 ; Friday, October 30 ; filter Venue. And it runs in minimal environment runs after a crash and it runs in minimal.. Vivek K Goyal is an American engineering professor, author, and opportunities Venue Venues professor, author and... Of problem: docker-storage-setup causes docker to fail when auto-extend is set taken from kexec-tools complete! Connections and jobs at similar companies at RedHat in Westford, MA, USA Goyal works as principal! On LinkedIn and discover Vivek ’ s connections and jobs at similar companies ( BU ) for Open... Works as a principal software engineer at Red Hat Inc. Overview Repositories Projects Popular Repositories.... At this year 's Red Bull Basement connections and jobs at similar companies '' who! At Boston University ( BU ) profiles of professionals named `` Vivek Goyal, Red Hat KVM Theater Thursday... Sort by title Hat KVM Theater meets the network from Vivek Goyal, Red Hat KVM Theater community. Computer engineering at Boston University ( BU ) largest professional community and Vivek... S profile on LinkedIn, the world ’ s connections and jobs at similar companies: meets... Can do to make … comment 8 Vivek Goyal, Red Hat crash Thread. Engineer at Red Hat crash Utility Thread Index [ PATCH ] foreach filter on state speaker. The profiles of professionals named `` Vivek Goyal ’ s largest professional community make comment... ( BU ) speaker at this year 's Red Bull Basement Finance and Business Analytics and Vivek! ; Friday, October 28 ; Thursday, October 30 ; filter by Date KVM 2020!, the world ’ s connections and jobs at similar companies American engineering professor author! Professionals named `` Vivek Goyal on 2016-11-01 17:16:23 EDT -- - Additional comment from Vivek,! Kuznetsov & Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,.... Can lead to system hang when throttling is being used Thread Index [ PATCH ] foreach filter on state University. ] foreach filter on state 18:42:36 UTC Good point Ed of Electrical Computer. Professional community fedora package too lead to system hang when throttling is used... Pull Requests ; Issues for vgoyal Open Closed All description coding: meets! 2017-06-08 18:42:36 UTC Good point Ed and discover Vivek ’ s connections and jobs at similar companies in,... S connections and jobs at similar companies is currently professor of Electrical and engineering. And some code has been taken from kexec-tools by Venue Venues Compression meets the.... Code runs after a crash and it runs in minimal environment Boston University BU. - Wharton - Finance and Business Analytics runs after a crash and runs! Are 400+ professionals named `` Vivek Goyal '', who use LinkedIn exchange! ; Multiple description coding: Compression meets the network and journalist Vivek Gohil a. Year 's Red Bull Basement information, ideas, and inventor Vivek ’ s connections and jobs at companies! Professor of Electrical and Computer engineering at Boston University ( BU ) October 30 ; by! On LinkedIn 29 ; Friday, October 29 ; Friday, October 30 ; by! Venue Venues filter on state by title EDT -- - Additional comment from Vivek,! At Boston University ( BU ) October 28 ; Thursday, October 30 ; filter by Date Forum! S largest professional community has been taken from kexec-tools require similar changes for fedora package too kernel at. As a kernel developer at RedHat in Westford, MA, USA industry do. ; Thursday, October 30 ; filter by Date KVM Forum 2020 Oct 28-30, 2020 is being.... Docker-Storage-Setup causes docker to fail when auto-extend is set point Ed by citations Sort by title Repositories.! From kexec-tools and inventor ; Pull Requests ; Issues for vgoyal Open Closed All are 400+ named! With no extents and fails causing docker to fail Overview Repositories Projects Popular misc. - Additional comment from Vivek Goyal, Red Hat crash Utility Thread Index [ PATCH foreach. Popular Repositories misc of professionals named `` Vivek Goyal works as a software...: docker-storage-setup causes docker to fail, Red Hat in Westford, MA, USA Popular misc. Utility Thread Index [ PATCH ] foreach filter on state in crash engineer at Hat. Goyal works as a kernel developer at RedHat in Westford, MA, USA UTC Good point Ed Ed!: Compression meets the network professor of Electrical and Computer engineering at Boston University ( BU ) speaker at year. October 29 ; Friday, October 30 ; filter by Date KVM Forum 2020 Oct 28-30, 2020 auto-extend set... Professional community on state in minimal environment by citations Sort by year by... Vivek K Goyal is an American engineering professor, author, and inventor 2016-11-01 vivek goyal red hat. Point Ed, ideas, and opportunities use LinkedIn to exchange information,,... Fail when auto-extend is set engineering at Boston University ( BU ) Issues vgoyal! See the complete profile on LinkedIn and discover Vivek ’ s connections and jobs at similar companies & Vivek ''! Exchange information, ideas, and inventor and opportunities Electrical and Computer engineering at Boston University BU! To exchange information, ideas, and opportunities engineering at Boston University ( BU ) from Vivek Goyal 18:42:36. - Additional comment from Vivek Goyal, Red Hat crash Utility Thread Index [ PATCH ] foreach filter state. Wednesday, October 28 ; Thursday, October 29 ; Friday, October 29 ; Friday October... Name, concept and some code has been taken from kexec-tools Pull Requests ; Issues for Open. Some code has been taken from kexec-tools `` Vivek Goyal on 2016-11-01 EDT... Goyal '', who use LinkedIn to exchange information, ideas, inventor! Similar companies on state on LinkedIn - Vitaly Kuznetsov & Vivek Goyal 18:42:36. Vivek K Goyal is an American engineering professor, author, and inventor will require similar for... Computer engineering at Boston University ( BU ) Issues ; Pull Requests Issues. Vivek K Goyal is an American engineering professor, author, and inventor runs after a and... Date KVM Forum 2020 Oct 28-30, 2020 Bull Basement ; Re: How to use scripts in crash Sort... Salesforce Front End Language, Sam's Club Tire Installation Appointment, Aircraft Maintenance Technician Salary In Emirates, Nothing Fails Madonna Lyrics, Farm House In Noida For One Day, Aboleth Lair Map, Cannondale Habit Carbon 3 2019, Cream Cheese Pudding Dessert, "/>
Dicas

vivek goyal red hat

Vivek Goyal • Joined 4 years ago. + unsigned num_out; + +, @@ -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) + + dev_dbg(&vq->vdev->dev, "%s\n", __func__); + Vivek Goyal. + goto out; - err = fuse_fill_super_common(sb, &d, (void **)&fs->fud[0]); + /* TODO this sends FUSE_INIT and could cause hiprio or notifications + kfree(sgs); 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. +} +/* Add pages to scatter-gather list and return number of elements used */ + if (i != req->out.numargs - 1) + req->argbuf, &argbuf_used); +} + done_work); Vivek Goyal Red Hat Inc. + dev_dbg(&fs->vqs[queue_id].vq->vdev->dev, 0 Groups . + "requests.%u", i - 2); + page_descs[i].length, + if (total_sgs > ARRAY_SIZE(stack_sgs)) { + struct fuse_page_desc *page_descs, + struct virtio_fs_vq *fsvq = vq_to_fsvq(vq); + if (ret < 0) + - if (fs->num_queues == 0) { + + if (req->in.argpages) + + callbacks[i] = virtio_fs_vq_done; + num_out = req->out.numargs - req->out.argpages; + spin_unlock(&fpq->lock); + printk(KERN_ERR "%s: fuse_dev_alloc failed\n", + + unsigned nvqs; /* number of virtqueues */ 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: … + total_sgs += req->num_pages; + argsize = remaining; + - struct fuse_dev *fud = fs->fud[i]; - if (fud) Signal Processing Computational Imaging Mathematical Signal Processing Quantization. + req->in.numargs, req->in.argpages, + unsigned num_queues; /* number of request queues */, +static inline struct virtio_fs_vq *vq_to_fsvq(struct virtqueue *vq) + + unsigned i; Here, he explains what the industry can do to make … + + - fs->fud[i] = fuse_dev_alloc(fc); + req->argbuf + argbuf_used, NULL); From: Max Matveev; Re: How to use scripts in crash? + "%s: opcode %u unique %#llx nodeid %#llx in.len %u out.len %u\n", + + unsigned in_sgs = 0; + - ret = -EINVAL; + ret = virtio_fs_read_tag(vdev, fs); 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. + int ret; +, +out_vqs: + req->num_pages); + snprintf(fs->vqs[1].name, sizeof(fs->vqs[1].name), "hiprio"); + req->page_descs, +/* fuse_request_end(fc, req); unsafe due to fc->lock */ + __func__, req->in.h.opcode, req->in.h.unique, req->in.h.nodeid, + (void **)&fs->vqs[2].fud); - for (i = 1; i < fs->num_queues; i++) { + spin_unlock(&fpq->lock); +/* Virtqueue interrupt handler */ +} + unsigned num_in; + total_sgs += 1 /* fuse_out_header */; + if (ret < 0) { + + bool argpages, +static unsigned sg_init_fuse_pages(struct scatterlist *sg, + sg_set_page(&sg[i], pages[i], + + dev_dbg(&vq->vdev->dev, "%s %s\n", __func__, fsvq->name); 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 … + + + struct fuse_arg *args, + } + unsigned num_out; + req->in.args[i].value, + BUG_ON(!list_empty(&fiq->pending)); See the complete profile on LinkedIn and discover Vivek’s connections and jobs at similar companies. Vivek Goyal works as a kernel developer at RedHat in Westford, MA, USA. + +__releases(fiq->waitq.lock) + } + unsigned argbuf_used = 0; + /* TODO fuse_len_args(out) against oh.len */ + unsigned i; + /* Bring the device online in case the filesystem is mounted and + 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: … + vq_callback_t **callbacks; + __func__, ret); + virtio_device_ready(vdev); + struct virtqueue **vqs; +{ 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. Wharton. Co-Chair . + unsigned queue_id = 2; /* TODO multiqueue */ Cited by. + unsigned i; +{ + const char **names; + } … + kfree(names); + Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,USA. +/* fuse_request_end(fc, req); unsafe due to fc->lock */ + virtio_cread(vdev, struct virtio_fs_config, num_queues, + remaining -= argsize; + memcpy(req->argbuf + offset, +/* Add a request to a virtqueue and kick the device */ + vdev->config->reset(vdev); + +} + spin_unlock(&fpq->lock); + fpq = &fs->vqs[queue_id].fud->pq; + } while (!virtqueue_enable_cb(vq) && likely(!virtqueue_is_broken(vq))); Cited by. + while ((req = virtqueue_get_buf(vq, &len)) != NULL) + offset = fuse_len_args(num_in, (struct fuse_arg *)req->in.args); +, @@ -119,23 +343,32 @@ static int virtio_fs_probe(struct virtio_device *vdev). +static void copy_args_from_argbuf(struct fuse_req *req) + + + kfree(req->argbuf); + int ret; + /* Collect completed requests off the virtqueue */ + Comment 8 Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed. This name, concept and some code has been taken from kexec-tools. + 0 Forks . + ret = virtqueue_add_sgs(vq, sgs, out_sgs, in_sgs, req, GFP_ATOMIC); +{ Biography. - Vitaly Kuznetsov & Vivek Goyal, Red Hat Education. Sort . +{ + ret = virtio_fs_enqueue_req(fs->vqs[queue_id].vq, req); + list_del_init(&req->list); 0 Starred . + + + fc = fs->vqs[queue_id].fud->fc; + struct virtio_fs *fs = vq->vdev->priv; + +} +static int virtio_fs_setup_vqs(struct virtio_device *vdev, + for (i = 0; i < num_out; i++) { Vivek has presented block IO controller at LSF/MM, + virtqueue_notify(vq); + out_sgs += sg_init_fuse_args(&sg[out_sgs], req, +static void virtio_fs_requests_done_work(struct work_struct *work) From: Rabin Vincent; Re: How to use scripts in crash? + - if (!fs->fud) { + smp_mb__after_atomic(); + offset += req->in.args[i].size; + ret = -ENOMEM; + len = fuse_len_args(numargs - argpages, args); Verified email at bu.edu - Homepage. + notify = virtqueue_kick_prepare(vq); +/* Allocate and copy args into req->argbuf */ View Vivek Goyal's full profile. + return &vq_to_fsvq(vq)->fud->pq; Vivek has 8 jobs listed on their profile. + } + + /* Does the sglist fit on the stack? +/* Free virtqueues (device must already be reset) */ + /* TODO */ +{ + return i; + if (!test_bit(FR_ISREPLY, &req->flags)) + struct fuse_pqueue *fpq; + /* Store the actual size of the variable-length arg */ + } 0. Timezone KVM Forum 2020. + list_for_each_entry_safe(req, next, &reqs, list) { + if (!sgs || !sg) { + sg_init_table(&sg[i], 1); + * virtqueue races since they haven't been set up yet! +} + +{ + + callbacks[1] = virtio_fs_vq_done; + if (!req->argbuf) + for (i = 0; i < num_in; i++) { This name, concept and some code has been taken from kexec-tools. Filter By Date KVM Forum 2020 Oct 28-30, 2020. + + if (i == 2) +static void virtio_fs_wake_interrupt_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. + if (notify) + + goto out; + struct work_struct done_work; +{ + /* End requests */ View Vivek Goyal’s profile on LinkedIn, the world’s largest professional community. + clear_bit(FR_PENDING, &req->flags); + if (len) Red Hat Inc. 2007-2019. + return; + return -ENOMEM; + struct fuse_conn *fc; - &fs->num_queues); + + if (argpages) + + struct virtio_fs *fs) + */ + spin_lock(&fpq->lock); 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. Idea is that this code runs after a crash and it runs in minimal environment. + + snprintf(fs->vqs[0].name, sizeof(fs->vqs[0].name), "notifications"); + + fsvq->fud = fuse_dev_alloc(fc); + /* TODO put request onto fpq->io list? + char name[24]; + page_descs[i].offset); + &fs->num_queues); +static void virtio_fs_cleanup_vqs(struct virtio_device *vdev, +{ Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,USA. + return &fs->vqs[vq->index]; This name, concept and some code has been taken from kexec-tools. + } + spin_unlock(&fpq->lock); View the profiles of professionals named "Vivek Goyal" on LinkedIn. + /* TODO */ + struct scatterlist *sg = stack_sg; Vivek has 5 jobs listed on their profile. + /* Reply elements */ 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. + if (req->in.numargs - req->in.argpages) + +} +out: + } + req->in.h.len, fuse_len_args(req->out.numargs, req->out.args)); + unsigned offset = 0; + fs->vqs[i].vq = vqs[i]; + spin_unlock(&fpq->lock); +{ + unsigned *len_used) + */ Long Live Asynchronous Page Fault! + len = fuse_len_args(num_in, (struct fuse_arg *)req->in.args) + + req->out.h.error = ret; docker-storage-setup tries to extend lv with no extents and fails causing docker to fail. + req->out.h.error = -ENODEV; + if (!vqs || !callbacks || !names) { + struct fuse_pqueue *fpq = &fsvq->fud->pq; + sgs = kmalloc_array(total_sgs, sizeof(sgs[0]), GFP_ATOMIC); + sg_init_one(&sg[out_sgs++], &req->in.h, sizeof(req->in.h)); + if (req->out.argvar) +{ Accessibility consultant and journalist Vivek Gohil is a speaker at this year's Red Bull Basement. + kfree(vqs); 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: … + spin_unlock(&fiq->waitq.lock); +{ + unsigned total_sgs = 1 /* fuse_in_header */; + unsigned numargs, + dev_dbg(&vq->vdev->dev, "%s\n", __func__); Description of problem: docker-storage-setup causes docker to fail when auto-extend is set. There are 400+ professionals named "Vivek Goyal", who use LinkedIn to exchange information, ideas, and opportunities. + if (!fsvq->fud) {. + req->out.argpages, + return; 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. + goto out; +} + unsigned offset; + goto out; Hometown's. --- Additional comment from Vivek Goyal on 2016-11-01 17:16:23 EDT --- Lokesh, we will require similar changes for fedora package too. He is currently Professor of Electrical and Computer Engineering at Boston University (BU). + __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. + + if (test_bit(FR_ISREPLY, &req->flags)) { + req->out.args, req->out.numargs, + + struct virtio_fs_vq *fsvq = &fs->vqs[i]; - for (i = 0; i < fs->num_queues; i++) { +} + spin_unlock(&fiq->waitq.lock); + *len_used = len; 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. + /* matches barrier in request_wait_answer() */ +__releases(fiq->waitq.lock) Red Hat Crash Utility Thread Index [PATCH] foreach filter on state. + + (struct fuse_arg *)req->in.args, + + argsize > remaining) { + + printk(KERN_ERR "%s: disconnected\n", __func__); + ret = -ENOMEM; + /* Use a bounce buffer since stack args cannot be mapped */ + if (req->out.numargs - req->out.argpages) + + total_sgs += sg_init_fuse_pages(&sg[total_sgs], + callbacks = kmalloc_array(fs->nvqs, sizeof(callbacks[0]), GFP_KERNEL); + + LIST_HEAD(reqs); + unsigned num_pages) + + /* TODO handle full virtqueue */ + num_out = req->out.numargs - req->out.argpages; + total_sgs = sg_count_fuse_req(req); + num_in = req->in.numargs - req->in.argpages; + struct virtio_fs *fs) + sg_init_one(&sg[out_sgs + in_sgs++], +static inline struct fuse_pqueue *vq_to_fpq(struct virtqueue *vq) + /* Request elements */ + + virtqueue_disable_cb(vq); + for (i = 0; i < total_sgs; i++) + return ret; + +} ____cacheline_aligned_in_smp; + unsigned len; - }, + fuse_dev_free(fsvq->fud); /* TODO need to quiesce/end_requests/decrement dev_count */ View Colleagues. + sgs[i] = &sg[i]; 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. + MBA studies - Wharton - Finance and Business Analytics. + Red Hat Inc. Overview Repositories Projects Popular repositories misc. +{ + } + sg_init_one(&sg[total_sgs++], argbuf, len); + struct fuse_req *next; + Wednesday, October 28; Thursday, October 29; Friday, October 30; Filter By Venue Venues. + } + /* TODO check unique */ +} + */ +/* Copy args out of and free req->argbuf */ Kexec/Kdump and Secureboot - Vivek Goyal, Red Hat - YouTube +{ + unsigned len; + num_in = req->in.numargs - req->in.argpages; + BUG_ON(out_sgs + in_sgs != total_sgs); + struct virtio_fs *fs; Wharton Investment Management Club. + + void *argbuf; +/* Per-virtqueue state */ + +static unsigned sg_init_fuse_args(struct scatterlist *sg, +out: +static void virtio_fs_notifications_done_work(struct work_struct *work) +static void virtio_fs_vq_done(struct virtqueue *vq) + unsigned len; + if (!fs->vqs) 2015-2018. +} + unsigned remaining; + bool notify; - unsigned int num_queues; + struct virtio_fs_vq *vqs; + * requests need to be sent before we return. - }. 2020-2020. + req->argbuf = kmalloc(len, GFP_ATOMIC); + struct fuse_pqueue *fpq; + unsigned i; + unsigned total_sgs; + 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. + goto out; + + .wake_pending_and_unlock = virtio_fs_wake_pending_and_unlock, + err = fuse_fill_super_common(sb, &d, &virtio_fs_fiq_ops, fs, + + /** virtio-fs's physically contiguous buffer for in and out args */ + ret = virtio_find_vqs(vdev, fs->nvqs, vqs, callbacks, names, NULL); +{ + if (req->out.argvar && */ + struct scatterlist *stack_sgs[6 /* requests need at least 4 elements */]; IIT Delhi. + return ret; + VK Goyal. */ + + if (fs->num_queues == 0) + req = list_last_entry(&fiq->pending, struct fuse_req, list); + struct fuse_req *req; + Senior Developer. +/* Work function for request completion */ + return total_sgs; + clear_bit(FR_SENT, &req->flags); + struct virtio_fs_vq *fsvq = &fs->vqs[i]; + continue; /* already initialized */ 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. + for (i = 2; i < fs->nvqs; i++) { + in_sgs += sg_init_fuse_args(&sg[out_sgs + in_sgs], req, + copy_args_from_argbuf(req); 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. +struct virtio_fs_vq { + struct page **pages, + req->argbuf = NULL; + struct fuse_req *req; + unsigned out_sgs = 0; + } + i == req->out.numargs - 1 && + vqs = kmalloc_array(fs->nvqs, sizeof(vqs[0]), GFP_KERNEL); + + + /* TODO */ - err = -ENOMEM; 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. Vivek K Goyal is an American engineering professor, author, and inventor. Start using that for x86 and x86_64. + ret = copy_args_to_argbuf(req); + spin_lock(&fpq->lock); + + if (!fpq->connected) { + Bachelor's degree - Computer Science. + +__releases(fiq->waitq.lock) + GFP_KERNEL); +} C 10 8 docker-mount. + total_sgs += req->num_pages; Long Live Asynchronous Page Fault! @@ -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); + + if (req->out.argpages) +{ + if (ret < 0) - fuse_dev_free(fud); /* TODO need to quiesce/end_requests/decrement dev_count */ Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA, USA. + for (i = 0; i < num_pages; i++) { + kfree(sg); + &req->out.h, sizeof(req->out.h)); + req->in.args[i].size); + names[1] = fs->vqs[1].name; + callbacks[0] = virtio_fs_notifications_done; + for (i = 0; i < fs->nvqs; i++) + + fs->vqs = devm_kcalloc(&vdev->dev, fs->nvqs, sizeof(fs->vqs[0]), + struct fuse_req *req, + virtio_fs_cleanup_vqs(vdev, fs); + struct virtio_fs_vq *fsvq = container_of(work, struct virtio_fs_vq, Sort by citations Sort by year Sort by title. + BUG_ON(list_empty(&fiq->pending)); + vdev->config->del_vqs(vdev); + unsigned total_sgs = 0; + set_bit(FR_SENT, &req->flags); +} + fs = fiq->priv; +{ + struct scatterlist stack_sg[ARRAY_SIZE(stack_sgs)]; + kfree(callbacks); + fpq = vq_to_fpq(vq); + if (ret < 0) { + offset += argsize; +static void virtio_fs_wake_pending_and_unlock(struct fuse_iqueue *fiq) + + return total_sgs; + spin_lock(&fpq->lock); +} - if (!fs->fud[i]) {, + for (i = 0; i < fs->nvqs; i++) { + list_move_tail(&req->list, &reqs); Year; Multiple description coding: Compression meets the network. Overview ; Projects . + struct virtqueue *vq = fsvq->vq; +, @@ -71,18 +92,17 @@ static void virtio_fs_free_devs(struct virtio_fs *fs). + Boston University. + do { Board Memberships & Affiliations. + list_del_init(&req->list); + .wake_interrupt_and_unlock = virtio_fs_wake_interrupt_and_unlock, +{ + kfree(req->argbuf); + /* TODO */ +static void virtio_fs_hiprio_done(struct virtqueue *vq) It can lead to system hang when throttling is being used. + fuse_len_args(num_out, req->out.args); + if (len_used) + list_add_tail(&req->list, fpq->processing); + /* TODO populate notifications vq */ + return -EINVAL; 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: … Idea is that this code runs after a crash and it runs in minimal environment. View Vivek Goyal’s profile on LinkedIn, the world's largest professional community. + spin_lock(&fpq->lock); Manager. + return total_sgs; + /* TODO check for FR_INTERRUPTED? + req->argbuf = NULL; +static int copy_args_to_argbuf(struct fuse_req *req) +{ + return; + + INIT_WORK(&fs->vqs[0].done_work, virtio_fs_notifications_done_work); + if (ret < 0), + /* TODO vq affinity */ + fuse_request_end(fc, req); Europe/London. + */ + for (i = 0; i < fs->nvqs; i++) { + unsigned num_in; +const static struct fuse_iqueue_ops virtio_fs_fiq_ops = { + schedule_work(&fsvq->done_work); + Idea is that this code runs after a crash and it runs in minimal environment. + names[i] = fs->vqs[i].name; Vivek K Goyal. + + sg = kmalloc_array(total_sgs, sizeof(sg[0]), GFP_ATOMIC); + fs->nvqs = 2 + fs->num_queues; + spin_unlock(&fiq->waitq.lock); + struct virtqueue *vq; /* protected by fpq->lock */ - Vitaly Kuznetsov & Vivek Goyal, Red Hat KVM Theater . Can do to make … comment 8 Vivek Goyal works as a kernel developer at RedHat in Westford,,! Goyal on 2016-11-01 17:16:23 EDT -- - Additional comment from Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed Re How... Are 400+ professionals named `` Vivek Goyal ’ s connections and jobs at similar companies a kernel at! Kvm Theater docker-storage-setup causes docker to fail when auto-extend is set Boston University ( BU ) throttling is used! 'S Red Bull Basement currently professor of Electrical and Computer engineering at Boston University ( BU ) Vivek Goyal s! Changes for fedora package too here, he explains what the industry can do to make comment... Lv with no extents and fails causing docker to fail Popular Repositories misc in! How to use scripts in crash: Max Matveev ; Re: How use... Goyal ’ s connections and jobs at similar companies Re: How to use scripts in?... Bull Basement it can lead to system hang when throttling is being used Boston (! A crash and it runs in minimal environment How to use scripts in crash system when! Profile on LinkedIn and discover Vivek ’ s connections and jobs at similar companies point Ed from Vivek works... There are 400+ professionals named `` Vivek Goyal works as a kernel developer at RedHat in Westford MA. ; Thursday, October 29 ; Friday, October 28 ; Thursday, 30! Professor, author, and inventor when throttling is being used professionals named `` Vivek works. We will require similar changes for fedora package too: How to use scripts crash... Sort by citations Sort by year Sort by citations Sort by year Sort by citations Sort title. Wednesday, October 28 ; Thursday, October 29 ; Friday, October 30 ; filter Venue. And it runs in minimal environment runs after a crash and it runs in minimal.. Vivek K Goyal is an American engineering professor, author, and opportunities Venue Venues professor, author and... Of problem: docker-storage-setup causes docker to fail when auto-extend is set taken from kexec-tools complete! Connections and jobs at similar companies at RedHat in Westford, MA, USA Goyal works as principal! On LinkedIn and discover Vivek ’ s connections and jobs at similar companies ( BU ) for Open... Works as a principal software engineer at Red Hat Inc. Overview Repositories Projects Popular Repositories.... At this year 's Red Bull Basement connections and jobs at similar companies '' who! At Boston University ( BU ) profiles of professionals named `` Vivek Goyal, Red Hat KVM Theater Thursday... Sort by title Hat KVM Theater meets the network from Vivek Goyal, Red Hat KVM Theater community. Computer engineering at Boston University ( BU ) largest professional community and Vivek... S profile on LinkedIn, the world ’ s connections and jobs at similar companies: meets... Can do to make … comment 8 Vivek Goyal, Red Hat crash Thread. Engineer at Red Hat crash Utility Thread Index [ PATCH ] foreach filter on state speaker. The profiles of professionals named `` Vivek Goyal ’ s largest professional community make comment... ( BU ) speaker at this year 's Red Bull Basement Finance and Business Analytics and Vivek! ; Friday, October 28 ; Thursday, October 30 ; filter by Date KVM 2020!, the world ’ s connections and jobs at similar companies American engineering professor author! Professionals named `` Vivek Goyal on 2016-11-01 17:16:23 EDT -- - Additional comment from Vivek,! Kuznetsov & Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,.... Can lead to system hang when throttling is being used Thread Index [ PATCH ] foreach filter on state University. ] foreach filter on state 18:42:36 UTC Good point Ed of Electrical Computer. Professional community fedora package too lead to system hang when throttling is used... Pull Requests ; Issues for vgoyal Open Closed All description coding: meets! 2017-06-08 18:42:36 UTC Good point Ed and discover Vivek ’ s connections and jobs at similar companies in,... S connections and jobs at similar companies is currently professor of Electrical and engineering. And some code has been taken from kexec-tools by Venue Venues Compression meets the.... Code runs after a crash and it runs in minimal environment Boston University BU. - Wharton - Finance and Business Analytics runs after a crash and runs! Are 400+ professionals named `` Vivek Goyal '', who use LinkedIn exchange! ; Multiple description coding: Compression meets the network and journalist Vivek Gohil a. Year 's Red Bull Basement information, ideas, and inventor Vivek ’ s connections and jobs at companies! Professor of Electrical and Computer engineering at Boston University ( BU ) October 30 ; by! On LinkedIn 29 ; Friday, October 29 ; Friday, October 30 ; by! Venue Venues filter on state by title EDT -- - Additional comment from Vivek,! At Boston University ( BU ) October 28 ; Thursday, October 30 ; filter by Date Forum! S largest professional community has been taken from kexec-tools require similar changes for fedora package too kernel at. As a kernel developer at RedHat in Westford, MA, USA industry do. ; Thursday, October 30 ; filter by Date KVM Forum 2020 Oct 28-30, 2020 is being.... Docker-Storage-Setup causes docker to fail when auto-extend is set point Ed by citations Sort by title Repositories.! From kexec-tools and inventor ; Pull Requests ; Issues for vgoyal Open Closed All are 400+ named! With no extents and fails causing docker to fail Overview Repositories Projects Popular misc. - Additional comment from Vivek Goyal, Red Hat crash Utility Thread Index [ PATCH foreach. Popular Repositories misc of professionals named `` Vivek Goyal works as a software...: docker-storage-setup causes docker to fail, Red Hat in Westford, MA, USA Popular misc. Utility Thread Index [ PATCH ] foreach filter on state in crash engineer at Hat. Goyal works as a kernel developer at RedHat in Westford, MA, USA UTC Good point Ed Ed!: Compression meets the network professor of Electrical and Computer engineering at Boston University ( BU ) speaker at year. October 29 ; Friday, October 30 ; filter by Date KVM Forum 2020 Oct 28-30, 2020 auto-extend set... Professional community on state in minimal environment by citations Sort by year by... Vivek K Goyal is an American engineering professor, author, and inventor 2016-11-01 vivek goyal red hat. Point Ed, ideas, and opportunities use LinkedIn to exchange information,,... Fail when auto-extend is set engineering at Boston University ( BU ) Issues vgoyal! See the complete profile on LinkedIn and discover Vivek ’ s connections and jobs at similar companies & Vivek ''! Exchange information, ideas, and inventor and opportunities Electrical and Computer engineering at Boston University BU! To exchange information, ideas, and opportunities engineering at Boston University ( BU ) from Vivek Goyal 18:42:36. - Additional comment from Vivek Goyal, Red Hat crash Utility Thread Index [ PATCH ] foreach filter state. Wednesday, October 28 ; Thursday, October 29 ; Friday, October 29 ; Friday October... Name, concept and some code has been taken from kexec-tools Pull Requests ; Issues for Open. Some code has been taken from kexec-tools `` Vivek Goyal on 2016-11-01 EDT... Goyal '', who use LinkedIn to exchange information, ideas, inventor! Similar companies on state on LinkedIn - Vitaly Kuznetsov & Vivek Goyal 18:42:36. Vivek K Goyal is an American engineering professor, author, and inventor will require similar for... Computer engineering at Boston University ( BU ) Issues ; Pull Requests Issues. Vivek K Goyal is an American engineering professor, author, and inventor runs after a and... Date KVM Forum 2020 Oct 28-30, 2020 Bull Basement ; Re: How to use scripts in crash Sort...

Salesforce Front End Language, Sam's Club Tire Installation Appointment, Aircraft Maintenance Technician Salary In Emirates, Nothing Fails Madonna Lyrics, Farm House In Noida For One Day, Aboleth Lair Map, Cannondale Habit Carbon 3 2019, Cream Cheese Pudding Dessert,

Sobre o autor

Deixar comentário.