search for: call_rcu

Displaying 20 results from an estimated 43 matches for "call_rcu".

2013 Mar 09
4
[PATCH] use rcu_barrier() to wait for bdev puts at unmount
Doing this would reliably fail with -EBUSY for me: # mount /dev/sdb2 /mnt/scratch; umount /mnt/scratch; mkfs.btrfs -f /dev/sdb2 ... unable to open /dev/sdb2: Device or resource busy because mkfs.btrfs tries to open the device O_EXCL, and somebody still has it. Using systemtap to track bdev gets & puts shows a kworker thread doing a blkdev put after mkfs attempts a get; this is left over
2007 Jan 17
11
[PATCH] Add RCU support into Xen - Repost
...t cpu. + */ + cpumask = rcp->cpumask; + cpu_clear(rdp->cpu, cpumask); + cpumask_raise_softirq(cpumask, SCHEDULE_SOFTIRQ); + } +} +#else +static inline void force_quiescent_state(struct rcu_data *rdp, + struct rcu_ctrlblk *rcp) +{ + raise_softirq(SCHEDULE_SOFTIRQ); +} +#endif + +/** + * call_rcu - Queue an RCU callback for invocation after a grace period. + * @head: structure to be used for queueing the RCU updates. + * @func: actual update function to be invoked after the grace period + * + * The update function will be invoked some time after a full grace + * period elapses, in other wor...
2007 Jan 17
11
[PATCH] Add RCU support into Xen - Repost
...t cpu. + */ + cpumask = rcp->cpumask; + cpu_clear(rdp->cpu, cpumask); + cpumask_raise_softirq(cpumask, SCHEDULE_SOFTIRQ); + } +} +#else +static inline void force_quiescent_state(struct rcu_data *rdp, + struct rcu_ctrlblk *rcp) +{ + raise_softirq(SCHEDULE_SOFTIRQ); +} +#endif + +/** + * call_rcu - Queue an RCU callback for invocation after a grace period. + * @head: structure to be used for queueing the RCU updates. + * @func: actual update function to be invoked after the grace period + * + * The update function will be invoked some time after a full grace + * period elapses, in other wor...
2013 Sep 01
0
[PATCH] btrfs: use list_for_each_entry_safe() when delete items
Replace list_for_each_entry() by list_for_each_entry_safe() in __btrfs_close_devices() list_for_each_entry() { list_replace_rcu(); call_rcu(); <-- We may free the device, if we get next device by the current one, the page fault may happen. } Signed-off-by: Azat Khuzhin <a3at.mail@gmail.com> Reviewed-by: Miao Xie <miaox@cn.fujitsu.c...
2014 Apr 12
1
btrfs in centos 6
...I see I can fix with [root at h-248-254 ~]# mknod /dev/btrfs-control c 10 234 [root at h-248-254 ~]# btrfsck /dev/sdb checking extents ... which makes me think that I'm missing some udev rules? And then for the mount oops I only have a photo, but the call chain is ... bad_area __do_page_fault call_rcu_sched call_rcu do_page_fault page_fault selinux_set_mnt_opts superblock_doinit deactiviate_locked_super selinux_sb_kern_mount security_sb_kern_mount vfs_kern_mount do_kern_mount I'm not 100% sure this hardware is OK ... but I can do lots of stuff with the btrfs progs and never see any problems...
2011 Apr 20
4
[PATCH 1/5] Btrfs: fix bh leak on __btrfs_open_devices path
''bh'' is forgot to release if no error is detected Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com> --- fs/btrfs/volumes.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c index 8b9fb8c..69fc902 100644 --- a/fs/btrfs/volumes.c +++ b/fs/btrfs/volumes.c @@ -631,6 +631,7 @@ static int
2013 Oct 08
1
OT: errors compiling kernel module as a rpm package
...k_irq) = 0xecde1418 kernel(_spin_lock_irqsave) = 0x712aa29b kernel(_spin_unlock_bh) = 0x3aa1dbcf kernel(_spin_unlock_irqrestore) = 0x4b07e779 kernel(add_timer) = 0x46085e4f kernel(alloc_netdev_mq) = 0xafbc0d15 kernel(autoremove_wake_function) = 0xc8b57c27 kernel(boot_tvec_bases) = 0xfc6256b9 kernel(call_rcu) = 0x1251d30f kernel(complete) = 0xe456bd3a kernel(consume_skb) = 0x0de0cf25 kernel(cpu_possible_mask) = 0x76a495c1 kernel(csum_partial) = 0xe113bbbc kernel(del_timer) = 0x6307fc98 kernel(dev_base_lock) = 0xd1f91bcd kernel(dev_get_by_name) = 0x6edb8870 kernel(dev_queue_xmit) = 0x0d110dab kernel(dev...
2023 May 15
5
[Bridge] [PATCH net-next 1/2] bridge: Add a limit on FDB entries
...e *br, struct net_bridge_fdb_entry *f, hlist_del_init_rcu(&f->fdb_node); rhashtable_remove_fast(&br->fdb_hash_tbl, &f->rhnode, br_fdb_rht_params); + if (!WARN_ON(!br->fdb_n_entries)) + br->fdb_n_entries--; fdb_notify(br, f, RTM_DELNEIGH, swdev_notify); call_rcu(&f->rcu, fdb_rcu_free); } @@ -391,6 +393,9 @@ static struct net_bridge_fdb_entry *fdb_create(struct net_bridge *br, struct net_bridge_fdb_entry *fdb; int err; + if (unlikely(br->fdb_max_entries && br->fdb_n_entries >= br->fdb_max_entries)) + return NULL; + fdb =...
2023 May 15
3
[Bridge] [PATCH net-next 1/2] bridge: Add a limit on FDB entries
...+ if (!WARN_ON(!br->fdb_n_entries)) > + br->fdb_n_entries--; This is pointless, just put the WARN_ON(!br->fdb_n_entries) above decrementing, if we hit that we are already in trouble and not decrementing doesn't help us. > fdb_notify(br, f, RTM_DELNEIGH, swdev_notify); > call_rcu(&f->rcu, fdb_rcu_free); > } > @@ -391,6 +393,9 @@ static struct net_bridge_fdb_entry *fdb_create(struct net_bridge *br, > struct net_bridge_fdb_entry *fdb; > int err; > > + if (unlikely(br->fdb_max_entries && br->fdb_n_entries >= br->fdb_max_entri...
2012 Dec 18
0
[PATCH] [RFC] Btrfs: Subpagesize blocksize (WIP).
...to have eb->eb_lock already held */ +/* + * The RCU head must point to the first extent buffer belonging to a page. + */ +static inline void btrfs_release_extent_buffers_rcu(struct rcu_head *head) +{ + struct extent_buffer *eb = + container_of(head, struct extent_buffer, rcu_head); + + do { + call_rcu(&eb->rcu_head, btrfs_release_extent_buffer_rcu); + } while ((eb = eb->next)); +} + +/* Expects to have eb->refs_lock already held */ static int release_extent_buffer(struct extent_buffer *eb, gfp_t mask) { + struct btrfs_inode *btrfs_inode = BTRFS_I(eb->tree->mapping->host);...
2023 Jun 19
2
[Bridge] [PATCH net-next v2 2/3] bridge: Add a limit on learned FDB entries
...lete(struct net_bridge *br, struct net_bridge_fdb_entry *f, hlist_del_init_rcu(&f->fdb_node); rhashtable_remove_fast(&br->fdb_hash_tbl, &f->rhnode, br_fdb_rht_params); + br->fdb_cur_learned_entries -= learned; fdb_notify(br, f, RTM_DELNEIGH, swdev_notify); call_rcu(&f->rcu, fdb_rcu_free); } -/* Delete a local entry if no other port had the same address. */ +/* Delete a local entry if no other port had the same address. + * + * This function should only be called on entries with BR_FDB_LOCAL set, + * so clear_bit never removes the last bit in BR_FDB_...
2014 Jan 16
0
[PATCH net-next v3 4/5] net-sysfs: add support for device-specific rx queue sysfs attributes
...e_release(struct kobject *kobj) { struct netdev_rx_queue *queue = to_rx_queue(kobj); +#ifdef CONFIG_RPS struct rps_map *map; struct rps_dev_flow_table *flow_table; @@ -743,6 +738,7 @@ static void rx_queue_release(struct kobject *kobj) RCU_INIT_POINTER(queue->rps_flow_table, NULL); call_rcu(&flow_table->rcu, rps_dev_flow_table_release); } +#endif memset(kobj, 0, sizeof(*kobj)); dev_put(queue->dev); @@ -767,21 +763,27 @@ static int rx_queue_add_kobject(struct net_device *net, int index) kobject_put(kobj); return error; } + if (net->sysfs_rx_queue_group) +...
2014 Jan 16
0
[PATCH net-next v4 4/6] net-sysfs: add support for device-specific rx queue sysfs attributes
...e_release(struct kobject *kobj) { struct netdev_rx_queue *queue = to_rx_queue(kobj); +#ifdef CONFIG_RPS struct rps_map *map; struct rps_dev_flow_table *flow_table; @@ -743,6 +738,7 @@ static void rx_queue_release(struct kobject *kobj) RCU_INIT_POINTER(queue->rps_flow_table, NULL); call_rcu(&flow_table->rcu, rps_dev_flow_table_release); } +#endif memset(kobj, 0, sizeof(*kobj)); dev_put(queue->dev); @@ -767,21 +763,27 @@ static int rx_queue_add_kobject(struct net_device *net, int index) kobject_put(kobj); return error; } + if (net->sysfs_rx_queue_group) +...
2009 Sep 09
4
Dmesg log for 2.6.31-rc8 kernel been built on F12 (rawhide) vs log for same kernel been built on F11 and installed on F12
Previous 2.6.31-rc8 kernel was built on F11 and installed with modules on F12. Current kernel has been built on F12 (2.6.31-0.204.rc9.fc12.x86_64) and installed on F12 before loading under Xen 3.4.1. Dmesg log looks similar to Michael Yuong''s ''rc7.git4''  kernel for F12. Boris. --- On Tue, 9/8/09, Boris Derzhavets <bderzhavets@yahoo.com> wrote: From: Boris
2020 Oct 24
1
kvm+nouveau induced lockdep gripe
...bers protected by the bo::resv::reserved lock. --- a/drivers/gpu/drm/ttm/ttm_bo.c +++ b/drivers/gpu/drm/ttm/ttm_bo.c @@ -547,10 +547,10 @@ static void ttm_bo_delayed_workqueue(str ((HZ / 100) < 1) ? 1 : HZ / 100); } -static void ttm_bo_release(struct kref *kref) +static void ttm_bo_call_rcu_fn(struct rcu_head *rcu) { - struct ttm_buffer_object *bo = - container_of(kref, struct ttm_buffer_object, kref); + struct ttm_buffer_object *bo = container_of(rcu, + struct ttm_buffer_object, rcu); struct ttm_bo_device *bdev = bo->bdev; struct ttm_mem_type_manager *man = &bdev...
2012 Jul 12
6
[PATCH 0/5] Add vhost-blk support
Hi folks, This patchset adds vhost-blk support. vhost-blk is a in kernel virito-blk device accelerator. Compared to userspace virtio-blk implementation, vhost-blk gives about 5% to 15% performance improvement. Asias He (5): aio: Export symbols and struct kiocb_batch for in kernel aio usage eventfd: Export symbol eventfd_file_create() vhost: Make vhost a separate module vhost-net: Use
2012 Jul 12
6
[PATCH 0/5] Add vhost-blk support
Hi folks, This patchset adds vhost-blk support. vhost-blk is a in kernel virito-blk device accelerator. Compared to userspace virtio-blk implementation, vhost-blk gives about 5% to 15% performance improvement. Asias He (5): aio: Export symbols and struct kiocb_batch for in kernel aio usage eventfd: Export symbol eventfd_file_create() vhost: Make vhost a separate module vhost-net: Use
2016 Jun 16
0
[PATCH v7 00/12] Support non-lru page migration
...t;] ? woken_wake_function+0x51/0x51 [ 344.264260] [<ffffffffa0415a0f>] ? zram_rw_page+0x21d/0x21d [zram] [ 344.264263] [<ffffffff81494948>] ? blk_exit_rl+0x39/0x39 [ 344.264267] [<ffffffff81491130>] ? handle_bad_sector+0x192/0x192 [ 344.264271] [<ffffffff811506a1>] ? call_rcu+0x12/0x14 [ 344.264274] [<ffffffff8129a684>] ? put_object+0x58/0x5b [ 344.264277] [<ffffffff81496128>] generic_make_request+0x2bc/0x496 [ 344.264280] [<ffffffff81495e6c>] ? blk_plug_queued_count+0x103/0x103 [ 344.264283] [<ffffffff814965fa>] submit_bio+0x2f8/0x324 [...
2012 Mar 09
10
[PATCH 0 of 9] (v2) arm: SMP boot
This patch series implements SMP boot for arch/arm, as far as getting all CPUs up and running the idle loop. Changes from v1: - moved barriers out of loop in udelay() - dropped broken GIC change in favour of explanatory comment - made the increment of ready_cpus atomic (I couldn''t move the increment to before signalling the next CPU because the PT switch has to happen between
2023 Jun 19
4
[Bridge] [PATCH net-next v2 0/3, iproute2-next 0/1] bridge: Add a limit on learned FDB entries
Introduce a limit on the amount of learned FDB entries on a bridge, configured by netlink with a build time default on bridge creation in the kernel config. For backwards compatibility the kernel config default is disabling the limit (0). Without any limit a malicious actor may OOM a kernel by spamming packets with changing MAC addresses on their bridge port, so allow the bridge creator to limit