Displaying 20 results from an estimated 44 matches for "local_clock".
2015 Oct 22
4
[PATCH net-next RFC 2/2] vhost_net: basic polling support
...- Disable");
>
> @@ -287,12 +289,23 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
> rcu_read_unlock_bh();
> }
>
> +static bool tx_can_busy_poll(struct vhost_dev *dev,
> + unsigned long endtime)
> +{
> + unsigned long now = local_clock() >> 10;
local_clock might go backwards if we jump between CPUs.
One way to fix would be to record the CPU id and break
out of loop if that changes.
Also - defer this until we actually know we need it?
> +
> + return busyloop_timeout && !need_resched() &&
> +...
2015 Oct 22
4
[PATCH net-next RFC 2/2] vhost_net: basic polling support
...- Disable");
>
> @@ -287,12 +289,23 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
> rcu_read_unlock_bh();
> }
>
> +static bool tx_can_busy_poll(struct vhost_dev *dev,
> + unsigned long endtime)
> +{
> + unsigned long now = local_clock() >> 10;
local_clock might go backwards if we jump between CPUs.
One way to fix would be to record the CPU id and break
out of loop if that changes.
Also - defer this until we actually know we need it?
> +
> + return busyloop_timeout && !need_resched() &&
> +...
2015 Oct 22
4
[PATCH net-next RFC 1/2] vhost: introduce vhost_has_work()
This path introduces a helper which can give a hint for whether or not
there's a work queued in the work list.
Signed-off-by: Jason Wang <jasowang at redhat.com>
---
drivers/vhost/vhost.c | 6 ++++++
drivers/vhost/vhost.h | 1 +
2 files changed, 7 insertions(+)
diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c
index eec2f11..d42d11e 100644
--- a/drivers/vhost/vhost.c
+++
2015 Oct 22
4
[PATCH net-next RFC 1/2] vhost: introduce vhost_has_work()
This path introduces a helper which can give a hint for whether or not
there's a work queued in the work list.
Signed-off-by: Jason Wang <jasowang at redhat.com>
---
drivers/vhost/vhost.c | 6 ++++++
drivers/vhost/vhost.h | 1 +
2 files changed, 7 insertions(+)
diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c
index eec2f11..d42d11e 100644
--- a/drivers/vhost/vhost.c
+++
2015 Oct 23
0
[PATCH net-next RFC 2/2] vhost_net: basic polling support
...; @@ -287,12 +289,23 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
>> rcu_read_unlock_bh();
>> }
>>
>> +static bool tx_can_busy_poll(struct vhost_dev *dev,
>> + unsigned long endtime)
>> +{
>> + unsigned long now = local_clock() >> 10;
> local_clock might go backwards if we jump between CPUs.
> One way to fix would be to record the CPU id and break
> out of loop if that changes.
Right, or maybe disable preemption in this case?
>
> Also - defer this until we actually know we need it?
Right.
>
&...
2015 Oct 22
0
[PATCH net-next RFC 2/2] vhost_net: basic polling support
..." 1 -Enable; 0 - Disable");
@@ -287,12 +289,23 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
rcu_read_unlock_bh();
}
+static bool tx_can_busy_poll(struct vhost_dev *dev,
+ unsigned long endtime)
+{
+ unsigned long now = local_clock() >> 10;
+
+ return busyloop_timeout && !need_resched() &&
+ !time_after(now, endtime) && !vhost_has_work(dev) &&
+ single_task_running();
+}
+
/* Expects to be always run from workqueue - which acts as
* read-size critical section for our kind...
2016 Feb 28
2
[PATCH V3 3/3] vhost_net: basic polling support
...a69e..c91af93 100644
> --- a/drivers/vhost/net.c
> +++ b/drivers/vhost/net.c
> @@ -287,6 +287,44 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
> rcu_read_unlock_bh();
> }
>
> +static inline unsigned long busy_clock(void)
> +{
> + return local_clock() >> 10;
> +}
> +
> +static bool vhost_can_busy_poll(struct vhost_dev *dev,
> + unsigned long endtime)
> +{
> + return likely(!need_resched()) &&
> + likely(!time_after(busy_clock(), endtime)) &&
> + likely(!signal_pending(current)) &am...
2016 Feb 28
2
[PATCH V3 3/3] vhost_net: basic polling support
...a69e..c91af93 100644
> --- a/drivers/vhost/net.c
> +++ b/drivers/vhost/net.c
> @@ -287,6 +287,44 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
> rcu_read_unlock_bh();
> }
>
> +static inline unsigned long busy_clock(void)
> +{
> + return local_clock() >> 10;
> +}
> +
> +static bool vhost_can_busy_poll(struct vhost_dev *dev,
> + unsigned long endtime)
> +{
> + return likely(!need_resched()) &&
> + likely(!time_after(busy_clock(), endtime)) &&
> + likely(!signal_pending(current)) &am...
2016 Feb 28
1
[PATCH V3 3/3] vhost_net: basic polling support
...da69e..c91af93 100644
> --- a/drivers/vhost/net.c
> +++ b/drivers/vhost/net.c
> @@ -287,6 +287,44 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
> rcu_read_unlock_bh();
> }
>
> +static inline unsigned long busy_clock(void)
> +{
> + return local_clock() >> 10;
> +}
> +
> +static bool vhost_can_busy_poll(struct vhost_dev *dev,
> + unsigned long endtime)
> +{
> + return likely(!need_resched()) &&
> + likely(!time_after(busy_clock(), endtime)) &&
> + likely(!signal_pending(current)) &am...
2016 Feb 28
1
[PATCH V3 3/3] vhost_net: basic polling support
...da69e..c91af93 100644
> --- a/drivers/vhost/net.c
> +++ b/drivers/vhost/net.c
> @@ -287,6 +287,44 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
> rcu_read_unlock_bh();
> }
>
> +static inline unsigned long busy_clock(void)
> +{
> + return local_clock() >> 10;
> +}
> +
> +static bool vhost_can_busy_poll(struct vhost_dev *dev,
> + unsigned long endtime)
> +{
> + return likely(!need_resched()) &&
> + likely(!time_after(busy_clock(), endtime)) &&
> + likely(!signal_pending(current)) &am...
2016 Jan 20
3
[PATCH V2 3/3] vhost_net: basic polling support
...a69e..ce6da77 100644
> --- a/drivers/vhost/net.c
> +++ b/drivers/vhost/net.c
> @@ -287,6 +287,41 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
> rcu_read_unlock_bh();
> }
>
> +static inline unsigned long busy_clock(void)
> +{
> + return local_clock() >> 10;
> +}
> +
> +static bool vhost_can_busy_poll(struct vhost_dev *dev,
> + unsigned long endtime)
> +{
> + return likely(!need_resched()) &&
> + likely(!time_after(busy_clock(), endtime)) &&
> + likely(!signal_pending(current)) &am...
2016 Jan 20
3
[PATCH V2 3/3] vhost_net: basic polling support
...a69e..ce6da77 100644
> --- a/drivers/vhost/net.c
> +++ b/drivers/vhost/net.c
> @@ -287,6 +287,41 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
> rcu_read_unlock_bh();
> }
>
> +static inline unsigned long busy_clock(void)
> +{
> + return local_clock() >> 10;
> +}
> +
> +static bool vhost_can_busy_poll(struct vhost_dev *dev,
> + unsigned long endtime)
> +{
> + return likely(!need_resched()) &&
> + likely(!time_after(busy_clock(), endtime)) &&
> + likely(!signal_pending(current)) &am...
2016 Jan 21
1
[PATCH V2 3/3] vhost_net: basic polling support
...+++ b/drivers/vhost/net.c
> >>@@ -287,6 +287,41 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
> >> rcu_read_unlock_bh();
> >> }
> >>
> >>+static inline unsigned long busy_clock(void)
> >>+{
> >>+ return local_clock() >> 10;
> >>+}
> >>+
> >>+static bool vhost_can_busy_poll(struct vhost_dev *dev,
> >>+ unsigned long endtime)
> >>+{
> >>+ return likely(!need_resched()) &&
> >>+ likely(!time_after(busy_clock(), endtime)) &...
2016 Jan 21
1
[PATCH V2 3/3] vhost_net: basic polling support
...+++ b/drivers/vhost/net.c
> >>@@ -287,6 +287,41 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
> >> rcu_read_unlock_bh();
> >> }
> >>
> >>+static inline unsigned long busy_clock(void)
> >>+{
> >>+ return local_clock() >> 10;
> >>+}
> >>+
> >>+static bool vhost_can_busy_poll(struct vhost_dev *dev,
> >>+ unsigned long endtime)
> >>+{
> >>+ return likely(!need_resched()) &&
> >>+ likely(!time_after(busy_clock(), endtime)) &...
2016 Jan 15
0
freshclam: page allocation failure: order:0, mode:0x2204010
...hcd_map_urb_for_dma+0x5f8/0x780
[<ffffffff81108d8d>] ? trace_hardirqs_on+0xd/0x10
[<ffffffff8162469d>] usb_hcd_submit_urb+0x1cd/0xac0
[<ffffffff810e82ca>] ? sched_clock_cpu+0x8a/0xb0
[<ffffffff816e6387>] ? led_trigger_blink_oneshot+0x77/0x90
[<ffffffff810e8345>] ? local_clock+0x15/0x20
[<ffffffff81127b6d>] ? debug_lockdep_rcu_enabled+0x1d/0x20
[<ffffffff8162626c>] usb_submit_urb+0x3fc/0x5a0
[<ffffffff8187fb17>] ? _raw_read_unlock+0x27/0x40
[<ffffffffa04e548d>] intr_complete+0x3d/0xd0 [usbnet]
[<ffffffff81622bbe>] __usb_hcd_giveback_urb...
2016 Feb 29
0
[PATCH V3 3/3] vhost_net: basic polling support
...drivers/vhost/net.c
>> > @@ -287,6 +287,44 @@ static void vhost_zerocopy_callback(struct ubuf_info *ubuf, bool success)
>> > rcu_read_unlock_bh();
>> > }
>> >
>> > +static inline unsigned long busy_clock(void)
>> > +{
>> > + return local_clock() >> 10;
>> > +}
>> > +
>> > +static bool vhost_can_busy_poll(struct vhost_dev *dev,
>> > + unsigned long endtime)
>> > +{
>> > + return likely(!need_resched()) &&
>> > + likely(!time_after(busy_clock(), endtime)...
2011 Jul 14
0
btrfs panic
...node_need_killpriv+0x2d/0x37
[ 1998.478275] [<ffffffff810d8309>] file_remove_suid+0x27/0x64
[ 1998.478275] [<ffffffffa0240e14>] btrfs_file_aio_write+0x159/0x49a [btrfs]
[ 1998.478275] [<ffffffff8107bfd2>] ? trace_hardirqs_off+0xd/0xf
[ 1998.478275] [<ffffffff81071f42>] ? local_clock+0x36/0x4d
[ 1998.478275] [<ffffffff810800ab>] ? lock_release_non_nested+0xdb/0x263
[ 1998.478275] [<ffffffff81121996>] do_sync_write+0xcb/0x108
[ 1998.478275] [<ffffffff810f33a4>] ? might_fault+0x5c/0xac
[ 1998.478275] [<ffffffff8107ed01>] ? lock_is_held+0x8d/0x98
[ 1998...
2015 Sep 17
9
[Bug 92032] New: WARNING: CPU: 0 PID: 290 at lib/dma-debug.c:1205 check_sync+0x169/0x6e0()
...ce+0x364/0x3e0
[ 37.497413] [<c0b91445>] ? do_init_module+0x21/0x1b7
[ 37.497413] [<c0b91445>] ? do_init_module+0x21/0x1b7
[ 37.497413] [<c0b91474>] do_init_module+0x50/0x1b7
[ 37.497413] [<c050909c>] load_module+0x1ebc/0x2550
[ 37.497413] [<c049ad43>] ? local_clock+0x13/0x20
[ 37.497413] [<c0509877>] SyS_init_module+0x147/0x1a0
[ 37.497413] [<c04be63c>] ? trace_hardirqs_on_caller+0x12c/0x1d0
[ 37.497413] [<c052711c>] ? __audit_syscall_entry+0x8c/0xe0
[ 37.497413] [<c0b9ad2f>] sysenter_do_call+0x12/0x12
[ 37.497413] ---[ e...
2016 Feb 26
7
[PATCH V3 0/3] basic busy polling support for vhost_net
This series tries to add basic busy polling for vhost net. The idea is
simple: at the end of tx/rx processing, busy polling for new tx added
descriptor and rx receive socket for a while. The maximum number of
time (in us) could be spent on busy polling was specified ioctl.
Test A were done through:
- 50 us as busy loop timeout
- Netperf 2.6
- Two machines with back to back connected mlx4
- Guest
2016 Feb 26
7
[PATCH V3 0/3] basic busy polling support for vhost_net
This series tries to add basic busy polling for vhost net. The idea is
simple: at the end of tx/rx processing, busy polling for new tx added
descriptor and rx receive socket for a while. The maximum number of
time (in us) could be spent on busy polling was specified ioctl.
Test A were done through:
- 50 us as busy loop timeout
- Netperf 2.6
- Two machines with back to back connected mlx4
- Guest