| /kernel/linux/linux-5.10/drivers/md/ |
| D | dm-bio-prison-v1.c | 8 #include "dm-bio-prison-v1.h" 9 #include "dm-bio-prison-v2.h" 16 /*----------------------------------------------------------------*/ 28 /*----------------------------------------------------------------*/ 42 spin_lock_init(&prison->lock); in dm_bio_prison_create() 44 ret = mempool_init_slab_pool(&prison->cell_pool, MIN_CELLS, _cell_cache); in dm_bio_prison_create() 50 prison->cells = RB_ROOT; in dm_bio_prison_create() 58 mempool_exit(&prison->cell_pool); in dm_bio_prison_destroy() 65 return mempool_alloc(&prison->cell_pool, gfp); in dm_bio_prison_alloc_cell() 70 struct dm_bio_prison_cell *cell) in dm_bio_prison_free_cell() argument [all …]
|
| D | dm-bio-prison-v2.h | 2 * Copyright (C) 2011-2017 Red Hat, Inc. 10 #include "persistent-data/dm-block-manager.h" /* FIXME: for dm_block_t */ 11 #include "dm-thin-metadata.h" /* FIXME: for dm_thin_id */ 17 /*----------------------------------------------------------------*/ 24 * where they can't cause any mischief. Bios are put in a cell identified 25 * by a key, multiple bios can be in the same cell. When the cell is 61 * Eventually all bio prison clients should manage their own cell memory. 69 struct dm_bio_prison_cell_v2 *cell); 75 * call dm_cell_put_v2() to drop the reference count when finished using it. 78 * cell, and later given to the holder of the exclusive lock. [all …]
|
| D | dm-thin.c | 2 * Copyright (C) 2011-2012 Red Hat UK. 7 #include "dm-thin-metadata.h" 8 #include "dm-bio-prison-v1.h" 11 #include <linux/device-mapper.h> 12 #include <linux/dm-io.h> 13 #include <linux/dm-kcopyd.h> 50 #define MAX_DEV_ID ((1 << 24) - 1) 56 * We use a standard copy-on-write btree to store the mappings for the 57 * devices (note I'm talking about copy-on-write of the metadata here, not 94 * - The origin mapping will point to the old origin block (the shared [all …]
|
| /kernel/linux/linux-6.6/drivers/md/ |
| D | dm-bio-prison-v1.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #include "dm-bio-prison-v1.h" 10 #include "dm-bio-prison-v2.h" 17 /*----------------------------------------------------------------*/ 23 struct rb_root cell; member 34 /*----------------------------------------------------------------*/ 50 prison->num_locks = num_locks; in dm_bio_prison_create() 52 for (i = 0; i < prison->num_locks; i++) { in dm_bio_prison_create() 53 spin_lock_init(&prison->regions[i].lock); in dm_bio_prison_create() 54 prison->regions[i].cell = RB_ROOT; in dm_bio_prison_create() [all …]
|
| D | dm-bio-prison-v2.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Copyright (C) 2011-2017 Red Hat, Inc. 11 #include "persistent-data/dm-block-manager.h" /* FIXME: for dm_block_t */ 12 #include "dm-thin-metadata.h" /* FIXME: for dm_thin_id */ 18 /*----------------------------------------------------------------*/ 25 * where they can't cause any mischief. Bios are put in a cell identified 26 * by a key, multiple bios can be in the same cell. When the cell is 62 * Eventually all bio prison clients should manage their own cell memory. 70 struct dm_bio_prison_cell_v2 *cell); 76 * call dm_cell_put_v2() to drop the reference count when finished using it. [all …]
|
| D | dm-thin.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2011-2012 Red Hat UK. 8 #include "dm-thin-metadata.h" 9 #include "dm-bio-prison-v1.h" 12 #include <linux/device-mapper.h> 13 #include <linux/dm-io.h> 14 #include <linux/dm-kcopyd.h> 51 #define MAX_DEV_ID ((1 << 24) - 1) 57 * We use a standard copy-on-write btree to store the mappings for the 58 * devices (note I'm talking about copy-on-write of the metadata here, not [all …]
|
| /kernel/linux/linux-5.10/drivers/nvmem/ |
| D | core.c | 1 // SPDX-License-Identifier: GPL-2.0 6 * Copyright (C) 2013 Maxime Ripard <maxime.ripard@free-electrons.com> 16 #include <linux/nvmem-consumer.h> 17 #include <linux/nvmem-provider.h> 72 if (nvmem->reg_read) in nvmem_reg_read() 73 return nvmem->reg_read(nvmem->priv, offset, val, bytes); in nvmem_reg_read() 75 return -EINVAL; in nvmem_reg_read() 83 if (nvmem->reg_write) { in nvmem_reg_write() 84 gpiod_set_value_cansleep(nvmem->wp_gpio, 0); in nvmem_reg_write() 85 ret = nvmem->reg_write(nvmem->priv, offset, val, bytes); in nvmem_reg_write() [all …]
|
| /kernel/linux/linux-6.6/drivers/nvmem/ |
| D | core.c | 1 // SPDX-License-Identifier: GPL-2.0 6 * Copyright (C) 2013 Maxime Ripard <maxime.ripard@free-electrons.com> 16 #include <linux/nvmem-consumer.h> 17 #include <linux/nvmem-provider.h> 64 if (nvmem->reg_read) in __nvmem_reg_read() 65 return nvmem->reg_read(nvmem->priv, offset, val, bytes); in __nvmem_reg_read() 67 return -EINVAL; in __nvmem_reg_read() 75 if (nvmem->reg_write) { in __nvmem_reg_write() 76 gpiod_set_value_cansleep(nvmem->wp_gpio, 0); in __nvmem_reg_write() 77 ret = nvmem->reg_write(nvmem->priv, offset, val, bytes); in __nvmem_reg_write() [all …]
|
| /kernel/linux/linux-6.6/sound/core/seq/ |
| D | seq_memory.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 24 return pool->total_elements - atomic_read(&pool->counter); in snd_seq_pool_available() 29 return snd_seq_pool_available(pool) >= pool->room; in snd_seq_output_ok() 49 * ext.data.ptr = the additiona cell head 50 * -> cell.next -> cell.next -> .. 60 if ((event->flags & SNDRV_SEQ_EVENT_LENGTH_MASK) != SNDRV_SEQ_EVENT_LENGTH_VARIABLE) in get_var_len() 61 return -EINVAL; in get_var_len() 63 return event->data.ext.len & ~SNDRV_SEQ_EXT_MASK; in get_var_len() 71 struct snd_seq_event_cell *cell; in dump_var_event() local 81 if (event->data.ext.len & SNDRV_SEQ_EXT_USRPTR) { in dump_var_event() [all …]
|
| D | seq_prioq.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 4 * Copyright (c) 1998-1999 by Frank van de Pol <fvdpol@coil.demon.nl> 20 * +-------+ 21 * Head --> | first | 22 * +-------+ 24 * +-----v-+ 26 * +-------+ 28 * +-----v-+ 30 * +-------+ 32 * +-----v-+ [all …]
|
| /kernel/linux/linux-6.6/fs/afs/ |
| D | callback.c | 26 * ->fault() or ->page_mkwrite() - at which point we can handle invalidation 33 unmap_mapping_pages(vnode->netfs.inode.i_mapping, 0, 0, false); in afs_invalidate_mmap_work() 40 struct afs_cell *cell = server->cell; in afs_server_init_callback_work() local 42 down_read(&cell->fs_open_mmaps_lock); in afs_server_init_callback_work() 44 list_for_each_entry(vnode, &cell->fs_open_mmaps, cb_mmap_link) { in afs_server_init_callback_work() 45 if (vnode->cb_server == server) { in afs_server_init_callback_work() 46 clear_bit(AFS_VNODE_CB_PROMISED, &vnode->flags); in afs_server_init_callback_work() 47 queue_work(system_unbound_wq, &vnode->cb_work); in afs_server_init_callback_work() 51 up_read(&cell->fs_open_mmaps_lock); in afs_server_init_callback_work() 55 * Allow the fileserver to request callback state (re-)initialisation. [all …]
|
| D | vl_rotate.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 17 bool afs_begin_vlserver_operation(struct afs_vl_cursor *vc, struct afs_cell *cell, in afs_begin_vlserver_operation() argument 21 vc->cell = cell; in afs_begin_vlserver_operation() 22 vc->key = key; in afs_begin_vlserver_operation() 23 vc->error = -EDESTADDRREQ; in afs_begin_vlserver_operation() 24 vc->ac.error = SHRT_MAX; in afs_begin_vlserver_operation() 27 vc->error = -EINTR; in afs_begin_vlserver_operation() 28 vc->flags |= AFS_VL_CURSOR_STOP; in afs_begin_vlserver_operation() 41 struct afs_cell *cell = vc->cell; in afs_start_vl_iteration() local 44 if (cell->dns_source == DNS_RECORD_UNAVAILABLE || in afs_start_vl_iteration() [all …]
|
| /kernel/linux/linux-5.10/sound/core/seq/ |
| D | seq_prioq.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 4 * Copyright (c) 1998-1999 by Frank van de Pol <fvdpol@coil.demon.nl> 20 * +-------+ 21 * Head --> | first | 22 * +-------+ 24 * +-----v-+ 26 * +-------+ 28 * +-----v-+ 30 * +-------+ 32 * +-----v-+ [all …]
|
| D | seq_memory.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 24 return pool->total_elements - atomic_read(&pool->counter); in snd_seq_pool_available() 29 return snd_seq_pool_available(pool) >= pool->room; in snd_seq_output_ok() 49 * ext.data.ptr = the additiona cell head 50 * -> cell.next -> cell.next -> .. 60 if ((event->flags & SNDRV_SEQ_EVENT_LENGTH_MASK) != SNDRV_SEQ_EVENT_LENGTH_VARIABLE) in get_var_len() 61 return -EINVAL; in get_var_len() 63 return event->data.ext.len & ~SNDRV_SEQ_EXT_MASK; in get_var_len() 70 struct snd_seq_event_cell *cell; in snd_seq_dump_var_event() local 75 if (event->data.ext.len & SNDRV_SEQ_EXT_USRPTR) { in snd_seq_dump_var_event() [all …]
|
| /kernel/linux/linux-5.10/fs/afs/ |
| D | vl_rotate.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 17 bool afs_begin_vlserver_operation(struct afs_vl_cursor *vc, struct afs_cell *cell, in afs_begin_vlserver_operation() argument 21 vc->cell = cell; in afs_begin_vlserver_operation() 22 vc->key = key; in afs_begin_vlserver_operation() 23 vc->error = -EDESTADDRREQ; in afs_begin_vlserver_operation() 24 vc->ac.error = SHRT_MAX; in afs_begin_vlserver_operation() 27 vc->error = -EINTR; in afs_begin_vlserver_operation() 28 vc->flags |= AFS_VL_CURSOR_STOP; in afs_begin_vlserver_operation() 41 struct afs_cell *cell = vc->cell; in afs_start_vl_iteration() local 44 if (cell->dns_source == DNS_RECORD_UNAVAILABLE || in afs_start_vl_iteration() [all …]
|
| D | callback.c | 24 * Allow the fileserver to request callback state (re-)initialisation. 31 server->cb_s_break++; in afs_init_callback_state() 32 server = rcu_dereference(server->uuid_next); in afs_init_callback_state() 44 clear_bit(AFS_VNODE_NEW_CONTENT, &vnode->flags); in __afs_break_callback() 45 if (test_and_clear_bit(AFS_VNODE_CB_PROMISED, &vnode->flags)) { in __afs_break_callback() 46 vnode->cb_break++; in __afs_break_callback() 49 if (vnode->lock_state == AFS_VNODE_LOCK_WAITING_FOR_CB) in __afs_break_callback() 52 trace_afs_cb_break(&vnode->fid, vnode->cb_break, reason, true); in __afs_break_callback() 54 trace_afs_cb_break(&vnode->fid, vnode->cb_break, reason, false); in __afs_break_callback() 60 write_seqlock(&vnode->cb_lock); in afs_break_callback() [all …]
|
| /kernel/linux/linux-5.10/drivers/bus/ |
| D | hisi_lpc.c | 1 // SPDX-License-Identifier: GPL-2.0+ 22 #define DRV_NAME "hisi-lpc" 50 #define LPC_REG_OP_LEN 0x10 /* LPC cycles count per start */ 84 return (status & LPC_REG_OP_STATUS_FINISHED) ? 0 : -EIO; in wait_lpc_idle() 86 } while (--waitcnt); in wait_lpc_idle() 88 return -ETIME; in wait_lpc_idle() 92 * hisi_lpc_target_in - trigger a series of LPC cycles for read operation 99 * Returns 0 on success, non-zero on fail. 110 if (!buf || !opcnt || !para || !para->csize || !lpcdev) in hisi_lpc_target_in() 111 return -EINVAL; in hisi_lpc_target_in() [all …]
|
| /kernel/linux/linux-6.6/drivers/atm/ |
| D | iphase.h | 29 Complete the ABR logic of the driver, and added the ABR work- 32 Add the flow control logic to the driver to allow rate-limit VC. 127 #define ATM_DESC(skb) (skb->protocol) 128 #define IA_SKB_STATE(skb) (skb->protocol) 177 #define NRMCODE 5 /* 0 - 7 */ 178 #define TRMCODE 3 /* 0 - 7 */ 180 #define ATDFCODE 2 /* 0 - 15 */ 182 /*---------------------- Packet/Cell Memory ------------------------*/ 183 #define TX_PACKET_RAM 0x00000 /* start of Trasnmit Packet memory - 0 */ 186 - descriptor 0 unused */ [all …]
|
| D | nicstar.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 56 #define NUM_HB 8 /* Pre-allocated huge buffers */ 59 /* Lower level for count of buffers */ 65 /* Upper level for count of buffers */ 107 #define NS_MAX_IOVECS (2 + (65568 - NS_SMBUFSIZE) / \ 108 (NS_LGBUFSIZE - (NS_LGBUFSIZE % 48))) 111 #define NS_SMBUFSIZE_USABLE (NS_SMBUFSIZE - NS_SMBUFSIZE % 48) 112 #define NS_LGBUFSIZE_USABLE (NS_LGBUFSIZE - NS_LGBUFSIZE % 48) 114 #define NS_AAL0_HEADER (ATM_AAL0_SDU - ATM_CELL_PAYLOAD) /* 4 bytes */ 122 * RSQ - Receive Status Queue [all …]
|
| /kernel/linux/linux-5.10/drivers/atm/ |
| D | iphase.h | 29 Complete the ABR logic of the driver, and added the ABR work- 32 Add the flow control logic to the driver to allow rate-limit VC. 128 #define ATM_DESC(skb) (skb->protocol) 129 #define IA_SKB_STATE(skb) (skb->protocol) 178 #define NRMCODE 5 /* 0 - 7 */ 179 #define TRMCODE 3 /* 0 - 7 */ 181 #define ATDFCODE 2 /* 0 - 15 */ 183 /*---------------------- Packet/Cell Memory ------------------------*/ 184 #define TX_PACKET_RAM 0x00000 /* start of Trasnmit Packet memory - 0 */ 187 - descriptor 0 unused */ [all …]
|
| D | nicstar.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 56 #define NUM_HB 8 /* Pre-allocated huge buffers */ 59 /* Lower level for count of buffers */ 65 /* Upper level for count of buffers */ 107 #define NS_MAX_IOVECS (2 + (65568 - NS_SMBUFSIZE) / \ 108 (NS_LGBUFSIZE - (NS_LGBUFSIZE % 48))) 111 #define NS_SMBUFSIZE_USABLE (NS_SMBUFSIZE - NS_SMBUFSIZE % 48) 112 #define NS_LGBUFSIZE_USABLE (NS_LGBUFSIZE - NS_LGBUFSIZE % 48) 114 #define NS_AAL0_HEADER (ATM_AAL0_SDU - ATM_CELL_PAYLOAD) /* 4 bytes */ 122 * RSQ - Receive Status Queue [all …]
|
| /kernel/linux/linux-5.10/drivers/s390/char/ |
| D | tty3270.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * IBM/3270 Driver - tty functions. 8 * -- Copyright IBM Corp. 2003 115 /* tty3270->update_flags. See tty3270_update for details. */ 117 #define TTY_UPDATE_LIST 2 /* Update lines in tty3270->update. */ 130 mod_timer(&tp->timer, jiffies + expires); in tty3270_set_timer() 137 tty3270_update_prompt(struct tty3270 *tp, char *input, int count) in tty3270_update_prompt() argument 142 line = tp->prompt; in tty3270_update_prompt() 143 if (count != 0) in tty3270_update_prompt() 144 line->string[5] = TF_INMDT; in tty3270_update_prompt() [all …]
|
| /kernel/linux/linux-6.6/drivers/bus/ |
| D | hisi_lpc.c | 1 // SPDX-License-Identifier: GPL-2.0+ 22 #define DRV_NAME "hisi-lpc" 50 #define LPC_REG_OP_LEN 0x10 /* LPC cycles count per start */ 84 return (status & LPC_REG_OP_STATUS_FINISHED) ? 0 : -EIO; in wait_lpc_idle() 86 } while (--waitcnt); in wait_lpc_idle() 88 return -ETIMEDOUT; in wait_lpc_idle() 92 * hisi_lpc_target_in - trigger a series of LPC cycles for read operation 99 * Returns 0 on success, non-zero on fail. 110 if (!buf || !opcnt || !para || !para->csize || !lpcdev) in hisi_lpc_target_in() 111 return -EINVAL; in hisi_lpc_target_in() [all …]
|
| /kernel/linux/linux-6.6/drivers/s390/char/ |
| D | con3270.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * IBM/3270 Driver - tty functions. 8 * -- Copyright IBM Corp. 2003 37 #define TTY3270_SCREEN_PAGES 8 /* has to be power-of-two */ 38 #define TTY3270_RECALL_SIZE 16 /* has to be power-of-two */ 129 /* tty3270->update_flags. See tty3270_update for details. */ 142 mod_timer(&tp->timer, jiffies + expires); in tty3270_set_timer() 147 return tp->view.rows - TTY3270_INPUT_AREA_ROWS; in tty3270_tty_rows() 153 raw3270_buffer_address(tp->view.dev, cp, x, y); in tty3270_add_ba() 188 return (line + incr) & (tp->allocated_lines - 1); in tty3270_line_increment() [all …]
|
| /kernel/linux/linux-5.10/arch/parisc/kernel/ |
| D | firmware.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * arch/parisc/kernel/firmware.c - safe PDC access routines 14 * Copyright 2003 Grant Grundler <grundler parisc-linux org> 15 * Copyright 2003,2004 Ryan Bradetich <rbrad@parisc-linux.org> 16 * Copyright 2004,2006 Thibaut VARENE <varenet@parisc-linux.org> 22 * - the name of the pdc wrapper should match one of the macros 24 * - don't use caps for random parts of the name 25 * - use the static PDC result buffers and "copyout" to structs 27 * - hold pdc_lock while in PDC or using static result buffers 28 * - use __pa() to convert virtual (kernel) pointers to physical [all …]
|