search for: virtrng_scan

Displaying 17 results from an estimated 17 matches for "virtrng_scan".

2014 Aug 12
3
[3.16 stable PATCH v2 1/2] virtio: rng: delay hwrng_register() till driver is ready
...g); + if (vi->hwrng_register_done) + hwrng_unregister(&vi->hwrng); vdev->config->del_vqs(vdev); ida_simple_remove(&rng_index_ida, vi->index); kfree(vi); @@ -171,6 +165,16 @@ static void virtrng_remove(struct virtio_device *vdev) remove_common(vdev); } +static void virtrng_scan(struct virtio_device *vdev) +{ + struct virtrng_info *vi = vdev->priv; + int err; + + err = hwrng_register(&vi->hwrng); + if (!err) + vi->hwrng_register_done = true; +} + #ifdef CONFIG_PM_SLEEP static int virtrng_freeze(struct virtio_device *vdev) { @@ -195,6 +199,7 @@ static struc...
2014 Aug 12
3
[3.16 stable PATCH v2 1/2] virtio: rng: delay hwrng_register() till driver is ready
...g); + if (vi->hwrng_register_done) + hwrng_unregister(&vi->hwrng); vdev->config->del_vqs(vdev); ida_simple_remove(&rng_index_ida, vi->index); kfree(vi); @@ -171,6 +165,16 @@ static void virtrng_remove(struct virtio_device *vdev) remove_common(vdev); } +static void virtrng_scan(struct virtio_device *vdev) +{ + struct virtrng_info *vi = vdev->priv; + int err; + + err = hwrng_register(&vi->hwrng); + if (!err) + vi->hwrng_register_done = true; +} + #ifdef CONFIG_PM_SLEEP static int virtrng_freeze(struct virtio_device *vdev) { @@ -195,6 +199,7 @@ static struc...
2014 Jul 21
0
[PATCH 2/3] virtio: rng: delay hwrng_register() till driver is ready
...gt;hwrng); + if (hwrng_register_done) + hwrng_unregister(&vi->hwrng); vdev->config->del_vqs(vdev); ida_simple_remove(&rng_index_ida, vi->index); kfree(vi); @@ -170,6 +164,16 @@ static void virtrng_remove(struct virtio_device *vdev) remove_common(vdev); } +static void virtrng_scan(struct virtio_device *vdev) +{ + struct virtrng_info *vi = vdev->priv; + int err; + + err = hwrng_register(&vi->hwrng); + if (!err) + hwrng_register_done = true; +} + #ifdef CONFIG_PM_SLEEP static int virtrng_freeze(struct virtio_device *vdev) { @@ -194,6 +198,7 @@ static struct virti...
2014 Jul 21
0
[PATCH v2 3/4] virtio: rng: delay hwrng_register() till driver is ready
...g); + if (vi->hwrng_register_done) + hwrng_unregister(&vi->hwrng); vdev->config->del_vqs(vdev); ida_simple_remove(&rng_index_ida, vi->index); kfree(vi); @@ -170,6 +164,16 @@ static void virtrng_remove(struct virtio_device *vdev) remove_common(vdev); } +static void virtrng_scan(struct virtio_device *vdev) +{ + struct virtrng_info *vi = vdev->priv; + int err; + + err = hwrng_register(&vi->hwrng); + if (!err) + vi->hwrng_register_done = true; +} + #ifdef CONFIG_PM_SLEEP static int virtrng_freeze(struct virtio_device *vdev) { @@ -194,6 +198,7 @@ static struc...
2014 Aug 27
0
[3.16 stable PATCH v2 1/2] virtio: rng: delay hwrng_register() till driver is ready
...hwrng_unregister(&vi->hwrng); > vdev->config->del_vqs(vdev); > ida_simple_remove(&rng_index_ida, vi->index); > kfree(vi); > @@ -171,6 +165,16 @@ static void virtrng_remove(struct virtio_device *vdev) > remove_common(vdev); > } > > +static void virtrng_scan(struct virtio_device *vdev) > +{ > + struct virtrng_info *vi = vdev->priv; > + int err; > + > + err = hwrng_register(&vi->hwrng); > + if (!err) > + vi->hwrng_register_done = true; > +} > + > #ifdef CONFIG_PM_SLEEP > static int virtrng_freeze(struct v...
2014 Jul 21
3
[PATCH v2 3/4] virtio: rng: delay hwrng_register() till driver is ready
...hwrng_unregister(&vi->hwrng); > vdev->config->del_vqs(vdev); > ida_simple_remove(&rng_index_ida, vi->index); > kfree(vi); > @@ -170,6 +164,16 @@ static void virtrng_remove(struct virtio_device *vdev) > remove_common(vdev); > } > > +static void virtrng_scan(struct virtio_device *vdev) > +{ > + struct virtrng_info *vi = vdev->priv; > + int err; > + > + err = hwrng_register(&vi->hwrng); > + if (!err) > + vi->hwrng_register_done = true; Instead, perhaps we should just feed the entropy pool from here? We would still ne...
2014 Jul 21
3
[PATCH v2 3/4] virtio: rng: delay hwrng_register() till driver is ready
...hwrng_unregister(&vi->hwrng); > vdev->config->del_vqs(vdev); > ida_simple_remove(&rng_index_ida, vi->index); > kfree(vi); > @@ -170,6 +164,16 @@ static void virtrng_remove(struct virtio_device *vdev) > remove_common(vdev); > } > > +static void virtrng_scan(struct virtio_device *vdev) > +{ > + struct virtrng_info *vi = vdev->priv; > + int err; > + > + err = hwrng_register(&vi->hwrng); > + if (!err) > + vi->hwrng_register_done = true; Instead, perhaps we should just feed the entropy pool from here? We would still ne...
2014 Jul 21
8
[PATCH v2 0/4] virtio-rng: contribute to early randomness requests
v2: - update patch 3 to store the hwrng_register_done bool per-device rather than global - add patch 2 that re-arranges struct elems for better packing. Hi, This series enables virtio-rng to service the early randomness requests made by the hwrng core (patch 3), with Herbert's idea of using the scan routine. Patch 4 reverts the previous restriction, which no longer applies, to not send
2014 Jul 21
8
[PATCH v2 0/4] virtio-rng: contribute to early randomness requests
v2: - update patch 3 to store the hwrng_register_done bool per-device rather than global - add patch 2 that re-arranges struct elems for better packing. Hi, This series enables virtio-rng to service the early randomness requests made by the hwrng core (patch 3), with Herbert's idea of using the scan routine. Patch 4 reverts the previous restriction, which no longer applies, to not send
2014 Jul 21
4
[PATCH 0/3] virtio-rng: contribute to early randomness requests
Hi, This series enables virtio-rng to service the early randomness requests made by the hwrng core (patch 2), with Herbert's idea of using the scan routine. Patch 3 reverts the previous restriction, which no longer applies, to not send read requests to the host before successful probe. Patch 1 is a minor cleanup. Please review and apply, Amit Shah (3): virtio: rng: remove unused struct
2014 Jul 21
4
[PATCH 0/3] virtio-rng: contribute to early randomness requests
Hi, This series enables virtio-rng to service the early randomness requests made by the hwrng core (patch 2), with Herbert's idea of using the scan routine. Patch 3 reverts the previous restriction, which no longer applies, to not send read requests to the host before successful probe. Patch 1 is a minor cleanup. Please review and apply, Amit Shah (3): virtio: rng: remove unused struct
2014 Aug 12
3
[3.16 stable PATCH 1/2] virtio: rng: delay hwrng_register() till driver is ready
...g); + if (vi->hwrng_register_done) + hwrng_unregister(&vi->hwrng); vdev->config->del_vqs(vdev); ida_simple_remove(&rng_index_ida, vi->index); kfree(vi); @@ -171,6 +165,16 @@ static void virtrng_remove(struct virtio_device *vdev) remove_common(vdev); } +static void virtrng_scan(struct virtio_device *vdev) +{ + struct virtrng_info *vi = vdev->priv; + int err; + + err = hwrng_register(&vi->hwrng); + if (!err) + vi->hwrng_register_done = true; +} + #ifdef CONFIG_PM_SLEEP static int virtrng_freeze(struct virtio_device *vdev) { @@ -195,6 +199,7 @@ static struc...
2014 Aug 12
3
[3.16 stable PATCH 1/2] virtio: rng: delay hwrng_register() till driver is ready
...g); + if (vi->hwrng_register_done) + hwrng_unregister(&vi->hwrng); vdev->config->del_vqs(vdev); ida_simple_remove(&rng_index_ida, vi->index); kfree(vi); @@ -171,6 +165,16 @@ static void virtrng_remove(struct virtio_device *vdev) remove_common(vdev); } +static void virtrng_scan(struct virtio_device *vdev) +{ + struct virtrng_info *vi = vdev->priv; + int err; + + err = hwrng_register(&vi->hwrng); + if (!err) + vi->hwrng_register_done = true; +} + #ifdef CONFIG_PM_SLEEP static int virtrng_freeze(struct virtio_device *vdev) { @@ -195,6 +199,7 @@ static struc...
2014 Sep 18
2
[PATCH v2 3/6] hw_random: use reference counts on each struct hwrng.
...f815f106f>] kref_get.part.2+0x1e/0x27 [ 2.786382] [<ffffffff813b2d1a>] set_current_rng+0x3a/0x50 [ 2.788184] [<ffffffff813b32f8>] hwrng_register+0x148/0x290 [ 2.790175] [<ffffffffa005f7c0>] ? vp_reset+0x90/0x90 [virtio_pci] [ 2.792456] [<ffffffffa025a149>] virtrng_scan+0x19/0x30 [virtio_rng] [ 2.794424] [<ffffffffa0022208>] virtio_dev_probe+0x118/0x150 [virtio] [ 2.796391] [<ffffffff813cac57>] driver_probe_device+0x87/0x390 [ 2.798579] [<ffffffff813cb033>] __driver_attach+0x93/0xa0 [ 2.800576] [<ffffffff813cafa0>] ? __devic...
2014 Sep 18
2
[PATCH v2 3/6] hw_random: use reference counts on each struct hwrng.
...f815f106f>] kref_get.part.2+0x1e/0x27 [ 2.786382] [<ffffffff813b2d1a>] set_current_rng+0x3a/0x50 [ 2.788184] [<ffffffff813b32f8>] hwrng_register+0x148/0x290 [ 2.790175] [<ffffffffa005f7c0>] ? vp_reset+0x90/0x90 [virtio_pci] [ 2.792456] [<ffffffffa025a149>] virtrng_scan+0x19/0x30 [virtio_rng] [ 2.794424] [<ffffffffa0022208>] virtio_dev_probe+0x118/0x150 [virtio] [ 2.796391] [<ffffffff813cac57>] driver_probe_device+0x87/0x390 [ 2.798579] [<ffffffff813cb033>] __driver_attach+0x93/0xa0 [ 2.800576] [<ffffffff813cafa0>] ? __devic...
2014 Sep 18
9
[PATCH v2 0/6] fix hw_random stuck
When I hotunplug a busy virtio-rng device or try to access hwrng attributes in non-smp guest, it gets stuck. My original was pain, Rusty posted a real fix. This patchset fixed two issue in v1, and tested by my 6+ cases. | test 0: | hotunplug rng device from qemu monitor | | test 1: | guest) # dd if=/dev/hwrng of=/dev/null & | hotunplug rng device from qemu monitor | | test 2: |
2014 Sep 18
9
[PATCH v2 0/6] fix hw_random stuck
When I hotunplug a busy virtio-rng device or try to access hwrng attributes in non-smp guest, it gets stuck. My original was pain, Rusty posted a real fix. This patchset fixed two issue in v1, and tested by my 6+ cases. | test 0: | hotunplug rng device from qemu monitor | | test 1: | guest) # dd if=/dev/hwrng of=/dev/null & | hotunplug rng device from qemu monitor | | test 2: |