Home
last modified time | relevance | path

Searched refs:clone (Results 1 – 25 of 243) sorted by relevance

12345678910

/linux-6.6.21/drivers/md/
Ddm-clone-target.c69 struct clone { struct
152 static enum clone_metadata_mode get_clone_mode(struct clone *clone) in get_clone_mode() argument
154 return READ_ONCE(clone->mode); in get_clone_mode()
157 static const char *clone_device_name(struct clone *clone) in clone_device_name() argument
159 return dm_table_device_name(clone->ti->table); in clone_device_name()
162 static void __set_clone_mode(struct clone *clone, enum clone_metadata_mode new_mode) in __set_clone_mode() argument
170 enum clone_metadata_mode old_mode = get_clone_mode(clone); in __set_clone_mode()
179 dm_clone_metadata_set_read_only(clone->cmd); in __set_clone_mode()
183 dm_clone_metadata_set_read_write(clone->cmd); in __set_clone_mode()
187 WRITE_ONCE(clone->mode, new_mode); in __set_clone_mode()
[all …]
Ddm-rq.c21 struct request *orig, *clone; member
78 static void end_clone_bio(struct bio *clone) in end_clone_bio() argument
81 container_of(clone, struct dm_rq_clone_bio_info, clone); in end_clone_bio()
84 blk_status_t error = clone->bi_status; in end_clone_bio()
85 bool is_last = !clone->bi_next; in end_clone_bio()
87 bio_put(clone); in end_clone_bio()
157 static void dm_end_request(struct request *clone, blk_status_t error) in dm_end_request() argument
159 struct dm_rq_target_io *tio = clone->end_io_data; in dm_end_request()
163 blk_rq_unprep_clone(clone); in dm_end_request()
164 tio->ti->type->release_clone_rq(clone, NULL); in dm_end_request()
[all …]
Ddm-zone.c368 unsigned int zno, struct bio *clone) in dm_zone_map_bio_begin() argument
385 switch (bio_op(clone)) { in dm_zone_map_bio_begin()
392 if ((clone->bi_iter.bi_sector & (zsectors - 1)) != zwp_offset) in dm_zone_map_bio_begin()
401 clone->bi_opf = REQ_OP_WRITE | REQ_NOMERGE | in dm_zone_map_bio_begin()
402 (clone->bi_opf & (~REQ_OP_MASK)); in dm_zone_map_bio_begin()
403 clone->bi_iter.bi_sector += zwp_offset; in dm_zone_map_bio_begin()
464 struct bio *clone) in dm_zone_lock() argument
466 if (WARN_ON_ONCE(bio_flagged(clone, BIO_ZONE_WRITE_LOCKED))) in dm_zone_lock()
470 bio_set_flag(clone, BIO_ZONE_WRITE_LOCKED); in dm_zone_lock()
474 struct bio *clone) in dm_zone_unlock() argument
[all …]
Ddm-flakey.c392 static void clone_free(struct bio *clone) in clone_free() argument
396 if (clone->bi_vcnt > 0) { /* bio_for_each_folio_all crashes with an empty bio */ in clone_free()
397 bio_for_each_folio_all(fi, clone) in clone_free()
401 bio_uninit(clone); in clone_free()
402 kfree(clone); in clone_free()
405 static void clone_endio(struct bio *clone) in clone_endio() argument
407 struct bio *bio = clone->bi_private; in clone_endio()
408 bio->bi_status = clone->bi_status; in clone_endio()
409 clone_free(clone); in clone_endio()
415 struct bio *clone; in clone_bio() local
[all …]
Ddm.c92 static inline struct dm_target_io *clone_to_tio(struct bio *clone) in clone_to_tio() argument
94 return container_of(clone, struct dm_target_io, clone); in clone_to_tio()
118 return container_of(bio, struct dm_target_io, clone)->target_bio_nr; in dm_bio_get_target_bio_nr()
542 static void dm_start_io_acct(struct dm_io *io, struct bio *clone) in dm_start_io_acct() argument
551 if (!clone || likely(dm_tio_is_normal(clone_to_tio(clone)))) { in dm_start_io_acct()
577 struct bio *clone; in alloc_io() local
579 clone = bio_alloc_clone(NULL, bio, GFP_NOIO, &md->mempools->io_bs); in alloc_io()
580 tio = clone_to_tio(clone); in alloc_io()
609 bio_put(&io->tio.clone); in free_io()
617 struct bio *clone; in alloc_tio() local
[all …]
Ddm-crypt.c242 static void crypt_endio(struct bio *clone);
1658 static void crypt_free_buffer_pages(struct crypt_config *cc, struct bio *clone);
1683 struct bio *clone; in crypt_alloc_buffer() local
1693 clone = bio_alloc_bioset(cc->dev->bdev, nr_iovecs, io->base_bio->bi_opf, in crypt_alloc_buffer()
1695 clone->bi_private = io; in crypt_alloc_buffer()
1696 clone->bi_end_io = crypt_endio; in crypt_alloc_buffer()
1723 crypt_free_buffer_pages(cc, clone); in crypt_alloc_buffer()
1724 bio_put(clone); in crypt_alloc_buffer()
1732 __bio_add_page(clone, pages, size_to_add, 0); in crypt_alloc_buffer()
1737 if (dm_crypt_integrity_io_alloc(io, clone)) { in crypt_alloc_buffer()
[all …]
Ddm-zoned-target.c103 static void dmz_clone_endio(struct bio *clone) in dmz_clone_endio() argument
105 struct dmz_bioctx *bioctx = clone->bi_private; in dmz_clone_endio()
106 blk_status_t status = clone->bi_status; in dmz_clone_endio()
108 bio_put(clone); in dmz_clone_endio()
123 struct bio *clone; in dmz_submit_bio() local
128 clone = bio_alloc_clone(dev->bdev, bio, GFP_NOIO, &dmz->bio_set); in dmz_submit_bio()
129 if (!clone) in dmz_submit_bio()
133 clone->bi_iter.bi_sector = in dmz_submit_bio()
135 clone->bi_iter.bi_size = dmz_blk2sect(nr_blocks) << SECTOR_SHIFT; in dmz_submit_bio()
136 clone->bi_end_io = dmz_clone_endio; in dmz_submit_bio()
[all …]
/linux-6.6.21/Documentation/admin-guide/device-mapper/
Ddm-clone.rst4 dm-clone
10 dm-clone is a device mapper target which produces a one-to-one copy of an
15 The main use case of dm-clone is to clone a potentially remote, high-latency,
26 When the cloning completes, the dm-clone table can be removed altogether and be
29 The dm-clone target reuses the metadata library used by the thin-provisioning
56 clone of the source device.
68 dm-clone divides the source and destination devices in fixed sized regions.
72 The region size is configurable when you first create the dm-clone device. The
92 dm-clone interprets a discard request to a range that hasn't been hydrated yet
97 If the destination device supports discards, then by default dm-clone will pass
[all …]
/linux-6.6.21/fs/f2fs/
Dacl.c297 struct posix_acl *clone = NULL; in f2fs_acl_clone() local
302 clone = kmemdup(acl, size, flags); in f2fs_acl_clone()
303 if (clone) in f2fs_acl_clone()
304 refcount_set(&clone->a_refcount, 1); in f2fs_acl_clone()
306 return clone; in f2fs_acl_clone()
368 struct posix_acl *clone; in f2fs_acl_create() local
385 clone = f2fs_acl_clone(p, GFP_NOFS); in f2fs_acl_create()
386 if (!clone) { in f2fs_acl_create()
391 ret = f2fs_acl_create_masq(clone, mode); in f2fs_acl_create()
396 posix_acl_release(clone); in f2fs_acl_create()
[all …]
/linux-6.6.21/fs/
Dposix_acl.c221 struct posix_acl *clone = NULL; in posix_acl_clone() local
226 clone = kmemdup(acl, size, flags); in posix_acl_clone()
227 if (clone) in posix_acl_clone()
228 refcount_set(&clone->a_refcount, 1); in posix_acl_clone()
230 return clone; in posix_acl_clone()
559 struct posix_acl *clone = posix_acl_clone(*acl, gfp); in __posix_acl_create() local
561 if (clone) { in __posix_acl_create()
562 err = posix_acl_create_masq(clone, mode_p); in __posix_acl_create()
564 posix_acl_release(clone); in __posix_acl_create()
565 clone = NULL; in __posix_acl_create()
[all …]
/linux-6.6.21/net/core/
Dtimestamping.c25 struct sk_buff *clone; in skb_clone_tx_timestamp() local
37 clone = skb_clone_sk(skb); in skb_clone_tx_timestamp()
38 if (!clone) in skb_clone_tx_timestamp()
40 mii_ts->txtstamp(mii_ts, clone, type); in skb_clone_tx_timestamp()
/linux-6.6.21/tools/testing/selftests/bpf/progs/
Ddynptr_fail.c1455 struct bpf_dynptr clone; in clone_invalid2() local
1459 bpf_ringbuf_reserve_dynptr(&ringbuf, 64, 0, &clone); in clone_invalid2()
1462 bpf_dynptr_clone(&ptr1, &clone); in clone_invalid2()
1464 bpf_ringbuf_submit_dynptr(&clone, 0); in clone_invalid2()
1474 struct bpf_dynptr clone; in clone_invalidate1() local
1480 bpf_dynptr_clone(&ptr, &clone); in clone_invalidate1()
1485 bpf_dynptr_read(read_data, sizeof(read_data), &clone, 0, 0); in clone_invalidate1()
1496 struct bpf_dynptr clone; in clone_invalidate2() local
1501 bpf_dynptr_clone(&ptr, &clone); in clone_invalidate2()
1503 bpf_ringbuf_submit_dynptr(&clone, 0); in clone_invalidate2()
[all …]
/linux-6.6.21/include/linux/dsa/
Docelot.h14 struct sk_buff *clone; member
262 struct sk_buff *clone = OCELOT_SKB_CB(skb)->clone; in ocelot_ptp_rew_op() local
266 if (ptp_cmd == IFH_REW_OP_TWO_STEP_PTP && clone) { in ocelot_ptp_rew_op()
268 rew_op |= OCELOT_SKB_CB(clone)->ts_id << 3; in ocelot_ptp_rew_op()
/linux-6.6.21/net/ipv4/
Dinet_fragment.c490 struct sk_buff *clone; in inet_frag_reasm_prepare() local
493 clone = alloc_skb(0, GFP_ATOMIC); in inet_frag_reasm_prepare()
494 if (!clone) in inet_frag_reasm_prepare()
496 skb_shinfo(clone)->frag_list = skb_shinfo(head)->frag_list; in inet_frag_reasm_prepare()
500 clone->data_len = head->data_len - plen; in inet_frag_reasm_prepare()
501 clone->len = clone->data_len; in inet_frag_reasm_prepare()
502 head->truesize += clone->truesize; in inet_frag_reasm_prepare()
503 clone->csum = 0; in inet_frag_reasm_prepare()
504 clone->ip_summed = head->ip_summed; in inet_frag_reasm_prepare()
505 add_frag_mem_limit(q->fqdir, clone->truesize); in inet_frag_reasm_prepare()
[all …]
/linux-6.6.21/net/rds/
Dtcp_recv.c162 struct sk_buff *clone; in rds_tcp_data_recv() local
219 clone = pskb_extract(skb, offset, to_copy, arg->gfp); in rds_tcp_data_recv()
220 if (!clone) { in rds_tcp_data_recv()
225 skb_queue_tail(&tinc->ti_skb_list, clone); in rds_tcp_data_recv()
230 clone, clone->data, clone->len); in rds_tcp_data_recv()
/linux-6.6.21/net/netfilter/
Dnft_set_pipapo.c520 struct nft_pipapo_match *m = priv->clone; in pipapo_get()
1130 static int pipapo_realloc_scratch(struct nft_pipapo_match *clone, argument
1156 pipapo_free_scratch(clone, i);
1174 *per_cpu_ptr(clone->scratch, i) = scratch;
1198 struct nft_pipapo_match *m = priv->clone;
1700 pipapo_gc(set, priv->clone);
1705 new_clone = pipapo_clone(priv->clone);
1712 rcu_assign_pointer(priv->match, priv->clone);
1716 priv->clone = new_clone;
1746 pipapo_free_match(priv->clone);
[all …]
/linux-6.6.21/arch/um/kernel/skas/
DMakefile6 obj-y := clone.o mmu.o process.o syscall.o uaccess.o
13 UNPROFILE_OBJS := clone.o
/linux-6.6.21/drivers/net/ethernet/mscc/
Docelot_ptp.c611 struct sk_buff *clone) in ocelot_port_add_txtstamp_skb() argument
624 skb_shinfo(clone)->tx_flags |= SKBTX_IN_PROGRESS; in ocelot_port_add_txtstamp_skb()
626 OCELOT_SKB_CB(clone)->ts_id = ocelot_port->ts_id; in ocelot_port_add_txtstamp_skb()
635 skb_queue_tail(&ocelot_port->tx_skbs, clone); in ocelot_port_add_txtstamp_skb()
663 struct sk_buff **clone) in ocelot_port_txtstamp_request() argument
690 *clone = skb_clone_sk(skb); in ocelot_port_txtstamp_request()
691 if (!(*clone)) in ocelot_port_txtstamp_request()
694 err = ocelot_port_add_txtstamp_skb(ocelot, port, *clone); in ocelot_port_txtstamp_request()
699 OCELOT_SKB_CB(*clone)->ptp_class = ptp_class; in ocelot_port_txtstamp_request()
733 static bool ocelot_validate_ptp_skb(struct sk_buff *clone, u16 seqid) in ocelot_validate_ptp_skb() argument
[all …]
/linux-6.6.21/drivers/net/usb/
Dlg-vl600.c103 struct sk_buff *clone; in vl600_rx_fixup() local
200 clone = skb_clone(buf, GFP_ATOMIC); in vl600_rx_fixup()
201 if (!clone) in vl600_rx_fixup()
204 skb_trim(clone, packet_len); in vl600_rx_fixup()
205 usbnet_skb_return(dev, clone); in vl600_rx_fixup()
/linux-6.6.21/drivers/gpu/drm/nouveau/nvkm/engine/dma/
Dusernv04.c35 bool clone; member
51 if (dmaobj->clone) { in nv04_dmaobj_bind()
99 dmaobj->clone = true; in nv04_dmaobj_new()
/linux-6.6.21/tools/perf/Documentation/
Dbuild-xed.txt4 $ git clone https://github.com/intelxed/mbuild.git mbuild
5 $ git clone https://github.com/intelxed/xed
/linux-6.6.21/Documentation/translations/zh_CN/userspace-api/
Dno_new_privs.rst27 置 ``no_new_privs`` 。一旦该位被设置,它会在fork、clone和execve中继承下去
55 原则上,当 ``no_new_privs`` 被置位时, ``unshare(2)`` 和 ``clone(2)`` 的几个选
/linux-6.6.21/rust/macros/
Dhelpers.rs94 match tt.clone() { in parse_generics()
124 ty_generics.push(tt.clone()); in parse_generics()
133 ty_generics.push(tt.clone()); in parse_generics()
/linux-6.6.21/Documentation/userspace-api/
Dunshare.rst38 threads. On Linux, at the time of thread creation using the clone system
58 when creating a new process using fork or clone, unshare() can benefit
96 works on an active task (as opposed to clone/fork working on a newly
98 changes to copy_* functions utilized by clone/fork system call.
108 unshare() reverses sharing that was done using clone(2) system call,
109 so unshare() should have a similar interface as clone(2). That is,
110 since flags in clone(int flags, void \*stack) specifies what should
113 the meaning of the flags from the way they are used in clone(2).
140 using clone(2).
182 clone(2), fork(2)
[all …]
/linux-6.6.21/drivers/net/dsa/hirschmann/
Dhellcreek_hwtstamp.c371 struct sk_buff *clone; in hellcreek_port_txtstamp() local
388 clone = skb_clone_sk(skb); in hellcreek_port_txtstamp()
389 if (!clone) in hellcreek_port_txtstamp()
394 kfree_skb(clone); in hellcreek_port_txtstamp()
398 ps->tx_skb = clone; in hellcreek_port_txtstamp()

12345678910