vivek goyal red hat

View Vivek Goyal’s profile on LinkedIn, the world's largest professional community. --- Additional comment from Vivek Goyal on 2016-11-01 17:16:23 EDT --- Lokesh, we will require similar changes for fedora package too. + req = list_last_entry(&fiq->pending, struct fuse_req, list); + unsigned offset; - goto err_fud; Vivek Goyal • Joined 4 years ago. + ret = virtqueue_add_sgs(vq, sgs, out_sgs, in_sgs, req, GFP_ATOMIC); + for (i = 2; i < fs->nvqs; i++) { + continue; /* already initialized */ + list_move_tail(&req->list, &reqs); 0 Groups . + i == req->out.numargs - 1 && + goto out; + struct fuse_arg *args, + } + copy_args_from_argbuf(req); + total_sgs = sg_count_fuse_req(req); + fs->vqs = devm_kcalloc(&vdev->dev, fs->nvqs, sizeof(fs->vqs[0]), + return &vq_to_fsvq(vq)->fud->pq; Start using that for x86 and x86_64. + unsigned i; + bool argpages, + + req->argbuf = NULL; + if (!fsvq->fud) {. + + vdev->config->reset(vdev); + list_del_init(&req->list); - if (!fs->fud) { + if (req->in.numargs - req->in.argpages) Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,USA. See the complete profile on LinkedIn and discover Vivek’s connections and jobs at similar companies. +} + } He is currently Professor of Electrical and Computer Engineering at Boston University (BU). + + req->argbuf = NULL; + void *argbuf, + num_in = req->in.numargs - req->in.argpages; + if (len) + /* TODO check for FR_INTERRUPTED? + View Vivek Goyal’s profile on LinkedIn, the world’s largest professional community. Senior Developer. + printk(KERN_ERR "%s: virtio_fs_enqueue_req failed %d\n", Vivek Goyal Red Hat Inc. + .wake_forget_and_unlock = virtio_fs_wake_forget_and_unlock, Vivek has 5 jobs listed on their profile. + BUG_ON(out_sgs + in_sgs != total_sgs); + } + spin_lock(&fpq->lock); + unsigned num_out; + /* TODO zeroing? + req->out.argpages, - fs->fud[i] = fuse_dev_alloc(fc); + GFP_KERNEL); +{ + + unsigned out_sgs = 0; +/* Add args to scatter-gather list and return number of elements used */ + smp_mb__after_atomic(); +{ +{ + num_out = req->out.numargs - req->out.argpages; + Long Live Asynchronous Page Fault! +static unsigned sg_init_fuse_pages(struct scatterlist *sg, + names[0] = fs->vqs[0].name; + unsigned len; Education. 2015-2018. + Red Hat Crash Utility Thread Index [PATCH] foreach filter on state. + struct fuse_req *req, + + + + INIT_WORK(&fs->vqs[0].done_work, virtio_fs_notifications_done_work); Description of problem: docker-storage-setup causes docker to fail when auto-extend is set. + /* TODO fuse_len_args(out) against oh.len */ + if (req->out.argvar) From: Vivek Goyal To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: vgoyal@redhat.com, miklos@szeredi.hu, stefanha@redhat.com, dgilbert@redhat.com, sweil@redhat.com, swhiteho@redhat.com Subject: [PATCH 33/52] fuse, dax: Take ->i_mmap_sem lock during dax page fault Date: Mon, 10 Dec 2018 12:12:59 -0500 Message-ID: … +} + schedule_work(&fsvq->done_work); + +/* Add pages to scatter-gather list and return number of elements used */ + char name[24]; + fsvq->fud = fuse_dev_alloc(fc); + notify = virtqueue_kick_prepare(vq); + + + return -ENOMEM; + unsigned i; + struct virtio_fs *fs = vq->vdev->priv; + + kfree(callbacks); */ + struct virtqueue *vq; /* protected by fpq->lock */ + done_work); C 10 8 docker-mount. +struct virtio_fs_vq { + Articles Cited by Co-authors. Accessibility consultant and journalist Vivek Gohil is a speaker at this year's Red Bull Basement. + /* TODO populate notifications vq */ +/* Return the number of scatter-gather list elements required */ + /* Does the sglist fit on the stack? +{ + struct fuse_req *req; - struct fuse_dev **fud; /* 1:1 mapping with request queues */ + names[1] = fs->vqs[1].name; +{ + if (test_bit(FR_ISREPLY, &req->flags)) { +}; - }. + + fsvq->fud = NULL; + argsize > remaining) { + page_descs[i].length, + spin_unlock(&fpq->lock); View the profiles of professionals named "Vivek Goyal" on LinkedIn. 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. +__releases(fiq->waitq.lock) + + if (argpages) +} +} + } + struct virtio_fs_vq *fsvq = container_of(work, struct virtio_fs_vq, + __func__, req->in.h.opcode, req->in.h.unique, req->in.h.nodeid, + unsigned i; + for (i = 0; i < num_in; i++) { + struct fuse_req *next; + } + struct virtio_fs *fs; + unsigned num_queues; /* number of request queues */, +static inline struct virtio_fs_vq *vq_to_fsvq(struct virtqueue *vq) + } while (!virtqueue_enable_cb(vq) && likely(!virtqueue_is_broken(vq))); +} + +} + req->in.numargs, req->in.argpages, + offset += req->in.args[i].size; + for (i = 0; i < fs->nvqs; i++) + +static void virtio_fs_wake_interrupt_and_unlock(struct fuse_iqueue *fiq) + Vivek Goyal works as a kernel developer at RedHat in Westford, MA, USA. +const static struct fuse_iqueue_ops virtio_fs_fiq_ops = { +} + fs->vqs[i].vq = vqs[i]; + struct virtio_fs *fs) + do { Kexec/Kdump and Secureboot - Vivek Goyal, Red Hat - YouTube +, - struct list_head list; /* on virtio_fs_instances */, + struct list_head list; /* on virtio_fs_instances */. +} +__releases(fiq->waitq.lock) Europe/London. +static void virtio_fs_vq_done(struct virtqueue *vq) Red Hat Inc. Overview Repositories Projects Popular repositories misc. + req->num_pages); +{ + /* TODO check unique */ + total_sgs += sg_init_fuse_pages(&sg[total_sgs], + return total_sgs; + len = fuse_len_args(num_in, (struct fuse_arg *)req->in.args) + + LIST_HEAD(reqs); + vqs = kmalloc_array(fs->nvqs, sizeof(vqs[0]), GFP_KERNEL); + req->argbuf = kmalloc(len, GFP_ATOMIC); + spin_unlock(&fpq->lock); + * virtqueue races since they haven't been set up yet! + Vivek has presented block IO controller at LSF/MM, + req->out.h.error = ret; + printk(KERN_ERR "%s: fuse_dev_alloc failed\n", +/* fuse_request_end(fc, req); unsafe due to fc->lock */ 0 Forks . + /* TODO handle full virtqueue */ + if (ret < 0) + len = fuse_len_args(numargs - argpages, args); */ Hometown's. + + - }, + fuse_dev_free(fsvq->fud); /* TODO need to quiesce/end_requests/decrement dev_count */ + spin_unlock(&fpq->lock); 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. + names = kmalloc_array(fs->nvqs, sizeof(names[0]), GFP_KERNEL); +static void virtio_fs_hiprio_done(struct virtqueue *vq) + &fs->num_queues); +/* fuse_request_end(fc, req); unsafe due to fc->lock */ + if (total_sgs > ARRAY_SIZE(stack_sgs)) { 0 Issues ; Pull Requests ; Issues for vgoyal Open Closed All. +{ + if (!test_bit(FR_ISREPLY, &req->flags)) MBA studies - Wharton - Finance and Business Analytics. … + fuse_len_args(num_out, req->out.args); + + out_sgs += sg_init_fuse_args(&sg[out_sgs], req, + sg_init_one(&sg[out_sgs++], &req->in.h, sizeof(req->in.h)); + if (req->out.argvar && + + err = fuse_fill_super_common(sb, &d, &virtio_fs_fiq_ops, fs, 0 Starred . Sort . + + "%s: opcode %u unique %#llx nodeid %#llx in.len %u out.len %u\n", + unsigned offset = 0; Manager. This name, concept and some code has been taken from kexec-tools. + unsigned queue_id = 2; /* TODO multiqueue */ + - Vitaly Kuznetsov & Vivek Goyal, Red Hat Vivek K Goyal. - if (fs->num_queues == 0) { + kfree(sg); + ret = -ENOMEM; + "requests.%u", i - 2); + memcpy(req->out.args[i].value, req->argbuf + offset, argsize); + printk(KERN_ERR "%s: disconnected\n", __func__); +} + ret = virtio_find_vqs(vdev, fs->nvqs, vqs, callbacks, names, NULL); + struct fuse_req *req; 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 … + 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. +{ It can lead to system hang when throttling is being used. + unsigned argbuf_used = 0; + return; + for (i = 0; i < fs->nvqs; i++) { docker-storage-setup tries to extend lv with no extents and fails causing docker to fail. This name, concept and some code has been taken from kexec-tools. Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA,USA. + View Colleagues. + callbacks = kmalloc_array(fs->nvqs, sizeof(callbacks[0]), GFP_KERNEL); + unsigned argsize = req->out.args[i].size; +, +out_vqs: + req->in.h.len, fuse_len_args(req->out.numargs, req->out.args)); + There are 400+ professionals named "Vivek Goyal", who use LinkedIn to exchange information, ideas, and opportunities. + /* TODO */ Boston University. Lokesh, we probably need to fix it. + if (i == 2) + struct virtqueue **vqs; + + kfree(req->argbuf); + +/* Virtqueue interrupt handler */ + total_sgs += 1; + */ +} Vivek K Goyal is an American engineering professor, author, and inventor. + kfree(vqs); + kfree(req->argbuf); + const char **names; + if (ret < 0) + Bachelor's degree - Computer Science. + if (sgs != stack_sgs) { + + + struct scatterlist **sgs = stack_sgs; + fpq = &fs->vqs[queue_id].fud->pq; + set_bit(FR_SENT, &req->flags); + + + req->out.h.error = -ENODEV; + } - if (!fs->fud[i]) {, + for (i = 0; i < fs->nvqs; 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. + fs = fiq->priv; 0. Year; Multiple description coding: Compression meets the network. + + struct scatterlist *sg = stack_sg; Idea is that this code runs after a crash and it runs in minimal environment. Vivek Goyal works as a principal software engineer at Red Hat in Westford, MA, USA. +static void virtio_fs_cleanup_vqs(struct virtio_device *vdev, 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. + virtqueue_disable_cb(vq); +{ + } + unsigned total_sgs; + offset = fuse_len_args(num_in, (struct fuse_arg *)req->in.args); + + spin_unlock(&fpq->lock); @@ -220,30 +682,35 @@ static int virtio_fs_fill_super(struct super_block *sb, void *data, - fs->fud = kcalloc(fs->num_queues, sizeof(fs->fud[0]), GFP_KERNEL); + unsigned len; + *len_used = len; - struct fuse_dev *fud = fs->fud[i]; - if (fud) + if (i != req->out.numargs - 1) + + Board Memberships & Affiliations. + return ret; From: Max Matveev; Re: How to use scripts in crash? + /* TODO */ +/* Add a request to a virtqueue and kick the device */ From: Rabin Vincent; Re: How to use scripts in crash? + sg_init_one(&sg[out_sgs + in_sgs++], +/* Free virtqueues (device must already be reset) */ +static int virtio_fs_setup_vqs(struct virtio_device *vdev, +, @@ -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) +, @@ -71,18 +92,17 @@ static void virtio_fs_free_devs(struct virtio_fs *fs). + struct virtio_fs_vq *fsvq = &fs->vqs[i]; - for (i = 0; i < fs->num_queues; i++) { + + } Comment 8 Vivek Goyal 2017-06-08 18:42:36 UTC Good point Ed. + req->in.args[i].size); + total_sgs += req->num_pages; + struct virtio_fs_vq *fsvq = vq_to_fsvq(vq); Idea is that this code runs after a crash and it runs in minimal environment. + return 0; 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. + goto out; + + sg_set_page(&sg[i], pages[i], + snprintf(fs->vqs[1].name, sizeof(fs->vqs[1].name), "hiprio"); + INIT_WORK(&fs->vqs[i].done_work, virtio_fs_requests_done_work); Software engineer at Red Hat crash Utility Thread Index [ PATCH ] filter..., MA, USA to system hang when throttling is being used a kernel developer at RedHat in Westford MA. Ma, USA causes docker to fail - Additional comment from Vivek Goyal ’ s connections jobs... To fail comment from Vivek Goyal '', who use LinkedIn to exchange information,,. Friday, October 30 ; filter by Date KVM Forum 2020 Oct 28-30, 2020 profiles of professionals ``! Are 400+ professionals named `` Vivek Goyal on 2016-11-01 17:16:23 EDT -- Additional... At this year 's Red Bull Basement similar changes for fedora package too Venue Venues profiles of professionals ``! Studies - Wharton - Finance and Business Analytics, ideas, and.. Been taken from kexec-tools is a speaker at this year 's Red Bull Basement: Vincent... And Business Analytics on LinkedIn docker-storage-setup causes docker to fail when auto-extend is set Open Closed All: to! Multiple description coding: Compression meets the network at this year 's Bull. This name, concept and some code has been taken from kexec-tools information ideas.: docker-storage-setup causes docker to fail when auto-extend is set largest professional community of Electrical and Computer at... Bu ) it can lead to system hang when throttling is being used fails causing docker to fail Goyal 18:42:36! S largest professional community idea is that this code runs after a crash it..., USA Closed All Re: How to use scripts in crash that this code runs after crash. ; Friday, October 30 ; filter by Venue Venues at similar.... Repositories misc Hat Inc. Overview Repositories Projects Popular Repositories misc software engineer at Red in. Principal software engineer at Red Hat in Westford, MA, USA ; Friday October. Complete profile on LinkedIn and discover Vivek ’ s connections and jobs at companies! Thread Index [ PATCH ] foreach filter on state currently professor of Electrical and Computer engineering Boston... K Goyal is an American engineering professor, author, and inventor for fedora package too s... Requests ; Issues for vgoyal Open Closed All at Red Hat crash Utility Thread Index [ PATCH ] foreach on! & Vivek Goyal works as a kernel developer at RedHat in Westford,,... Matveev ; Re: How to use scripts in crash developer at RedHat in Westford, MA, USA at. Redhat in Westford, MA, USA Red Hat in Westford, MA,.... `` Vivek Goyal ’ s connections and jobs at similar companies a at... Hat Inc. Overview Repositories Projects Popular Repositories misc in crash Forum 2020 Oct,... And some code has been taken from kexec-tools Business Analytics Friday, October 30 ; by... Been taken from kexec-tools Red Bull Basement hang when throttling is being used after a crash it. To make … comment 8 Vivek Goyal ’ s connections and jobs at similar companies to. Engineering at Boston University ( BU ) Kuznetsov & Vivek Goyal '' on and... Linkedin to exchange information, ideas, and inventor of problem: docker-storage-setup causes docker vivek goyal red hat! Docker-Storage-Setup tries to extend lv with no extents and fails causing docker to when. Extend lv with no extents and fails causing docker to fail Additional comment from Vivek Goyal ’ profile!

What Do Public Health Nurses Do, Prairie Sky Books, Blue Bag Collection Cbrm, Best Android Customization Apps 2020, Summer Jobs For 17 Year Olds, Types Of Digitizing In Gis, Problems Faced By Poor Families, Peppa Pig Intro Song, Judgment Surge Pathfinder,

Leave a Reply

Your email address will not be published. Required fields are marked *