/linux/arch/riscv/ |
H A D | Kconfig.errata | 20 non-standard handling on non-coherent operations on Andes cores. 22 If you don't know what to do here, say "Y". 35 bool "Apply SiFive errata CIP-453" 39 This will apply the SiFive CIP-453 errata to add sign extension 43 If you don't know what to do here, say "Y". 46 bool "Apply SiFive errata CIP-1200" 50 This will apply the SiFive CIP-1200 errata to repalce all 54 If you don't know what to do here, say "Y". 68 caches that are non-coherent with respect to peripheral DMAs. 69 It was designed before the Zicbom extension so needs non-standard [all …]
|
H A D | Kconfig.vendor | 16 If you don't know what to do here, say Y. 29 If you don't know what to do here, say Y. 32 menu "T-Head" menu 34 bool "T-Head vendor extension support" 38 Say N here to disable detection of and support for all T-Head vendor 39 extensions. Without this option enabled, T-Head vendor extensions will 42 If you don't know what to do here, say Y. 52 in the kernel. This will disable vector for any T-Head board that 55 If you don't know what to do here, say Y.
|
/linux/arch/x86/platform/uv/ |
H A D | uv_time.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Copyright (c) 2009-2013 Silicon Graphics, Inc. All Rights Reserved. 38 .irq = -1, 92 /* Setup interrupt and return non-zero if early expiration occurred. */ 101 uv_write_global_mmr64(pnode, UVH_INT_CMPB, -1L); in uv_setup_intr() 121 * Per-cpu timer tracking routines 134 /* Allocate per-node list of cpu timer expiration times. */ 141 return -ENOMEM; in uv_rtc_allocate_timers() 147 struct uv_rtc_timer_head *head = blade_info[bid]; in uv_rtc_allocate_timers() local 149 if (!head) { in uv_rtc_allocate_timers() [all …]
|
/linux/drivers/gpu/drm/radeon/ |
H A D | mkregtable.c | 1 // SPDX-License-Identifier: MIT 20 #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) 22 * container_of - cast a member of a structure out to the containing structure 29 const typeof(((type *)0)->member)*__mptr = (ptr); \ 30 (type *)((char *)__mptr - offsetof(type, member)); }) 39 * using the generic single-entry routines. 49 list->next = list; in INIT_LIST_HEAD() 50 list->prev = list; in INIT_LIST_HEAD() 63 next->prev = new; in __list_add() 64 new->next = next; in __list_add() [all …]
|
/linux/net/sctp/ |
H A D | output.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 4 * Copyright (c) 1999-2000 Cisco, Inc. 5 * Copyright (c) 1999-2001 Motorola, Inc. 13 * lksctp developers <linux-sctp@vger.kernel.org> 60 packet->size = packet->overhead; in sctp_packet_reset() 62 packet->has_cookie_echo = 0; in sctp_packet_reset() 63 packet->has_sack = 0; in sctp_packet_reset() 64 packet->has_data = 0; in sctp_packet_reset() 65 packet->has_auth = 0; in sctp_packet_reset() 66 packet->ipfragok = 0; in sctp_packet_reset() [all …]
|
/linux/kernel/futex/ |
H A D | syscalls.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 12 * Implementation: user-space maintains a per-thread list of locks it 17 * per-thread. Userspace also maintains a per-thread 'list_op_pending' 24 * sys_set_robust_list() - Set the robust-futex list head of a task 25 * @head: pointer to the list-head 26 * @len: length of the list-head, as userspace expects 28 SYSCALL_DEFINE2(set_robust_list, struct robust_list_head __user *, head, in SYSCALL_DEFINE2() argument 34 if (unlikely(len != sizeof(*head))) in SYSCALL_DEFINE2() 35 return -EINVAL; in SYSCALL_DEFINE2() 37 current->robust_list = head; in SYSCALL_DEFINE2() [all …]
|
/linux/Documentation/dev-tools/ |
H A D | checkuapi.rst | 1 .. SPDX-License-Identifier: GPL-2.0-only 7 The UAPI checker (``scripts/check-uapi.sh``) is a shell script which 8 checks UAPI header files for userspace backwards-compatibility across 14 This section will describe the options with which ``check-uapi.sh`` 19 check-uapi.sh [-b BASE_REF] [-p PAST_REF] [-j N] [-l ERROR_LOG] [-i] [-q] [-v] 23 -b BASE_REF Base git reference to use for comparison. If unspecified or empty, 25 dirty changes, HEAD will be used. 26 -p PAST_REF Compare BASE_REF to PAST_REF (e.g. -p v6.1). If unspecified or empty, 29 -j JOBS Number of checks to run in parallel (default: number of CPU cores). 30 -l ERROR_LOG Write error log to file (default: no error log is generated). [all …]
|
/linux/drivers/block/aoe/ |
H A D | aoecmd.c | 10 #include <linux/blk-mq.h> 54 struct list_head head; member 71 skb->protocol = __constant_htons(ETH_P_AOE); in new_skb() 80 struct list_head *head, *pos, *nx; in getframe_deferred() local 83 head = &d->rexmitq; in getframe_deferred() 84 list_for_each_safe(pos, nx, head) { in getframe_deferred() 85 f = list_entry(pos, struct frame, head); in getframe_deferred() 86 if (f->tag == tag) { in getframe_deferred() 98 struct list_head *head, *pos, *nx; in getframe() local 102 head = &d->factive[n]; in getframe() [all …]
|
H A D | aoedev.c | 8 #include <linux/blk-mq.h> 18 static void freetgt(struct aoedev *d, struct aoetgt *t); 29 * - partitions, 30 * - slots per shelf, 31 * - or shelves, 52 error = -1; in minor_get_dyn() 75 error = -1; in minor_get_static() 84 error = -1; in minor_get_static() 93 error = -1; in minor_get_static() 143 d->ref--; in aoedev_put() [all …]
|
/linux/net/bpf/ |
H A D | test_run.c | 1 // SPDX-License-Identifier: GPL-2.0-only 20 #include <linux/error-injection.h> 37 static void bpf_test_timer_enter(struct bpf_test_timer *t) in bpf_test_timer_enter() argument 41 if (t->mode == NO_PREEMPT) in bpf_test_timer_enter() 46 t->time_star in bpf_test_timer_enter() 49 bpf_test_timer_leave(struct bpf_test_timer * t) bpf_test_timer_leave() argument 61 bpf_test_timer_continue(struct bpf_test_timer * t,int iterations,u32 repeat,int * err,u32 * duration) bpf_test_timer_continue() argument 132 struct xdp_page_head *head = xdp_test_run_init_page() local 223 frame_was_changed(const struct xdp_page_head * head) frame_was_changed() argument 233 ctx_was_changed(struct xdp_page_head * head) ctx_was_changed() argument 240 reset_ctx(struct xdp_page_head * head) reset_ctx() argument 292 struct xdp_page_head *head; xdp_test_run_batch() local 377 struct bpf_test_timer t = { .mode = NO_MIGRATE }; bpf_test_run_xdp_live() local 407 struct bpf_test_timer t = { NO_MIGRATE }; bpf_test_run() local 1365 struct bpf_test_timer t = { NO_PREEMPT }; bpf_prog_test_run_flow_dissector() local 1433 struct bpf_test_timer t = { NO_PREEMPT }; bpf_prog_test_run_sk_lookup() local [all...] |
/linux/kernel/ |
H A D | softirq.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 * Rewritten. Old one was good in 2.2, but in 2.3 it was immoral. --ANK (990903) 38 - No shared variables, all the data are CPU local. 39 - If a softirq needs serialization, let it serialize itself 41 - Even if softirq is serialized, only local cpu is marked for 47 - NE 741 struct tasklet_struct *head; global() member 748 __tasklet_schedule_common(struct tasklet_struct * t,struct tasklet_head __percpu * headp,unsigned int softirq_nr) __tasklet_schedule_common() argument 752 struct tasklet_head *head; __tasklet_schedule_common() local 764 __tasklet_schedule(struct tasklet_struct * t) __tasklet_schedule() argument 771 __tasklet_hi_schedule(struct tasklet_struct * t) __tasklet_hi_schedule() argument 778 tasklet_clear_sched(struct tasklet_struct * t) tasklet_clear_sched() argument 802 struct tasklet_struct *t = list; tasklet_action_common() local 846 tasklet_setup(struct tasklet_struct * t,void (* callback)(struct tasklet_struct *)) tasklet_setup() argument 858 tasklet_init(struct tasklet_struct * t,void (* func)(unsigned long),unsigned long data) tasklet_init() argument 875 tasklet_unlock_spin_wait(struct tasklet_struct * t) tasklet_unlock_spin_wait() argument 896 tasklet_kill(struct tasklet_struct * t) tasklet_kill() argument 909 tasklet_unlock(struct tasklet_struct * t) tasklet_unlock() argument 915 tasklet_unlock_wait(struct tasklet_struct * t) tasklet_unlock_wait() argument [all...] |
/linux/drivers/net/ethernet/meta/fbnic/ |
H A D | fbnic_txrx.c | 1 // SPDX-License-Identifier: GPL-2.0 28 #define FBNIC_XMIT_CB(__skb) ((struct fbnic_xmit_cb *)((__skb)->cb)) 32 unsigned long csr_base = (unsigned long)ring->doorbell; in fbnic_ring_csr_base() 34 csr_base &= ~(FBNIC_QUEUE_STRIDE * sizeof(u32) - 1); in fbnic_ring_csr_base() 54 * fbnic_ts40_to_ns() - convert descriptor timestamp to PHC time 72 s = u64_stats_fetch_begin(&fbn->time_seq); in fbnic_ts40_to_ns() 73 offset = READ_ONCE(fbn->time_offset); in fbnic_ts40_to_ns() 74 } while (u64_stats_fetch_retry(&fbn->time_seq, s)); in fbnic_ts40_to_ns() 76 high = READ_ONCE(fbn->time_high); in fbnic_ts40_to_ns() 81 /* Compare bits 32-39 between periodic reads and ts40, in fbnic_ts40_to_ns() [all …]
|
/linux/drivers/pci/hotplug/ |
H A D | cpqphp_ctrl.c | 1 // SPDX-License-Identifier: GPL-2.0+ 6 * Copyright (C) 2001 Greg Kroah-Hartman (greg@kroah.com) 72 func = cpqhp_slot_find(ctrl->bus, in handle_switch_change() 73 (hp_slot + ctrl->slot_device_offset), 0); in handle_switch_change() 78 taskInfo = &(ctrl->event_queue[ctrl->next_event]); in handle_switch_change() 79 ctrl->next_event = (ctrl->next_event + 1) % 10; in handle_switch_change() 80 taskInfo->hp_slot = hp_slot; in handle_switch_change() 84 temp_word = ctrl->ctrl_int_comp >> 16; in handle_switch_change() 85 func->presence_save = (temp_word >> hp_slot) & 0x01; in handle_switch_change() 86 func->presence_save |= (temp_word >> (hp_slot + 7)) & 0x02; in handle_switch_change() [all …]
|
/linux/kernel/events/ |
H A D | ring_buffer.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Performance events ring-buffer code: 6 * Copyright (C) 2008-2011 Red Hat, Inc., Ingo Molnar 7 * Copyright (C) 2008-2011 Red Hat, Inc., Peter Zijlstra 22 atomic_set(&handle->rb->poll, EPOLLIN | EPOLLRDNORM); in perf_output_wakeup() 24 handle->event->pending_wakeup = 1; in perf_output_wakeup() 26 if (*perf_event_fasync(handle->event) && !handle->event->pending_kill) in perf_output_wakeup() 27 handle->event->pending_kill = POLL_IN; in perf_output_wakeup() 29 irq_work_queue(&handle->event->pending_irq); in perf_output_wakeup() 33 * We need to ensure a later event_id doesn't publish a head when a former [all …]
|
/linux/fs/xfs/ |
H A D | xfs_log_recover.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2000-2006 Silicon Graphics, Inc. 51 * Verify the log-relative block number and length in basic blocks are valid for 61 if (blk_no < 0 || blk_no >= log->l_logBBsize) in xlog_verify_bno() 63 if (bbcount <= 0 || (blk_no + bbcount) > log->l_logBBsize) in xlog_verify_bno() 78 * Pass log block 0 since we don't have an addr yet, buffer will be in xlog_alloc_buffer() 81 if (XFS_IS_CORRUPT(log->l_mp, !xlog_verify_bno(log, 0, nbblks))) { in xlog_alloc_buffer() 82 xfs_warn(log->l_mp, "Invalid block length (0x%x) for buffer", in xlog_alloc_buffer() 88 * We do log I/O in units of log sectors (a power-of-2 multiple of the in xlog_alloc_buffer() 92 * In addition, the buffer may be used for a non-sector-aligned block in xlog_alloc_buffer() [all …]
|
/linux/arch/powerpc/platforms/pseries/ |
H A D | hvcserver.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 28 * functions aren't performance sensitive, so this conversion isn't an 37 return -EINVAL; in hvcs_convert() 39 return -EIO; in hvcs_convert() 47 return -EBUSY; in hvcs_convert() 50 return -EPERM; in hvcs_convert() 55 * hvcs_free_partner_info - free pi allocated by hvcs_get_partner_info 56 * @head: list_head pointer for an allocated list of partner info structs to 62 int hvcs_free_partner_info(struct list_head *head) in hvcs_free_partner_info() argument 67 if (!head) in hvcs_free_partner_info() [all …]
|
/linux/net/sched/ |
H A D | cls_fw.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 55 struct fw_head *head = rcu_dereference_bh(tp->root); in fw_classify() local 58 u32 id = skb->mark; in fw_classify() 60 if (head != NULL) { in fw_classify() 61 id &= head->mask; in fw_classify() 63 for (f = rcu_dereference_bh(head->ht[fw_hash(id)]); f; in fw_classify() 64 f = rcu_dereference_bh(f->next)) { in fw_classify() 65 if (f->id == id) { in fw_classify() 66 *res = f->res; in fw_classify() 67 if (!tcf_match_indev(skb, f->ifindex)) in fw_classify() [all …]
|
H A D | cls_cgroup.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 30 struct cls_cgroup_head *head = rcu_dereference_bh(tp->root); in cls_cgroup_classify() local 33 if (unlikely(!head)) in cls_cgroup_classify() 34 return -1; in cls_cgroup_classify() 36 return -1; in cls_cgroup_classify() 37 if (!tcf_em_tree_match(skb, &head->ematches, NULL)) in cls_cgroup_classify() 38 return -1; in cls_cgroup_classify() 40 res->classid = classid; in cls_cgroup_classify() 41 res->class = 0; in cls_cgroup_classify() 43 return tcf_exts_exec(skb, &head->exts, res); in cls_cgroup_classify() [all …]
|
/linux/tools/perf/scripts/python/ |
H A D | compaction-times.py | 14 … "usage: perf script report compaction-times.py -- [-h] [-u] [-p|-pv] [-t | [-m] [-fs] [-ms]] [pid… 44 def set_type(t): argument 46 opt_disp = (t if opt_disp == topt.DISP_ALL else opt_disp|t) 52 return "%dns" % ns if opt_ns else "%dus" % (round(ns, -3) / 1000) 97 self.ns = ns(secs, nsecs) - self.ns 121 head = cls.heads[pid] 122 filtered = head.is_filtered() 126 head = cls.heads[pid] = chead(comm, pid, filtered) 129 head.mark_pending(start_secs, start_nsecs) 133 head = cls.heads[pid] [all …]
|
/linux/net/ipv6/ |
H A D | xfrm6_protocol.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 2 /* xfrm6_protocol.c - Generic xfrm protocol multiplexer for ipv6. 41 #define for_each_protocol_rcu(head, handler) \ argument 42 for (handler = rcu_dereference(head); \ 44 handler = rcu_dereference(handler->next)) \ 50 struct xfrm6_protocol __rcu **head = proto_handlers(protocol); in xfrm6_rcv_cb() local 52 if (!head) in xfrm6_rcv_cb() 56 if ((ret = handler->cb_handler(skb, err)) <= 0) in xfrm6_rcv_cb() 67 struct xfrm6_protocol __rcu **head = proto_handlers(nexthdr); in xfrm6_rcv_encap() local 69 XFRM_TUNNEL_SKB_CB(skb)->tunnel.ip6 = NULL; in xfrm6_rcv_encap() [all …]
|
/linux/net/strparser/ |
H A D | strparser.c | 1 // SPDX-License-Identifier: GPL-2.0-only 32 return (struct _strp_msg *)((void *)skb->cb + in _strp_msg() 41 cancel_delayed_work(&strp->msg_timer_work); in strp_abort_strp() 43 if (strp->stopped) in strp_abort_strp() 46 strp->stopped = 1; in strp_abort_strp() 48 if (strp->sk) { in strp_abort_strp() 49 struct sock *sk = strp->s in strp_abort_strp() 95 struct sk_buff *head, *skb; __strp_recv() local [all...] |
/linux/net/ipv4/ |
H A D | ip_tunnel.c | 1 // SPDX-License-Identifier: GPL-2.0-only 65 return !test_bit(IP_TUNNEL_KEY_BIT, p->i_flags); in ip_tunnel_key_match() 67 return test_bit(IP_TUNNEL_KEY_BIT, p->i_flags) && p->i_key == key; in ip_tunnel_key_match() 86 struct ip_tunnel *t, *cand = NULL; in ip_tunnel_lookup() local 87 struct hlist_head *head; in ip_tunnel_lookup() local 92 head in ip_tunnel_lookup() 192 ip_tunnel_add(struct ip_tunnel_net * itn,struct ip_tunnel * t) ip_tunnel_add() argument 194 struct hlist_head *head = ip_bucket(itn, &t->parms); ip_tunnel_add() local 201 ip_tunnel_del(struct ip_tunnel_net * itn,struct ip_tunnel * t) ip_tunnel_del() argument 217 struct ip_tunnel *t = NULL; ip_tunnel_find() local 218 struct hlist_head *head = ip_bucket(itn, parms); ip_tunnel_find() local 489 ip_tunnel_encap_setup(struct ip_tunnel * t,struct ip_tunnel_encap * ipencap) ip_tunnel_encap_setup() argument 874 ip_tunnel_update(struct ip_tunnel_net * itn,struct ip_tunnel * t,struct net_device * dev,struct ip_tunnel_parm_kern * p,bool set_mtu,__u32 fwmark) ip_tunnel_update() argument 912 struct ip_tunnel *t = netdev_priv(dev); ip_tunnel_ctl() local 1106 ip_tunnel_dellink(struct net_device * dev,struct list_head * head) ip_tunnel_dellink() argument 1178 ip_tunnel_destroy(struct net * net,struct ip_tunnel_net * itn,struct list_head * head,struct rtnl_link_ops * ops) ip_tunnel_destroy() argument 1189 struct ip_tunnel *t; ip_tunnel_destroy() local 1274 struct ip_tunnel *t; ip_tunnel_changelink() local [all...] |
/linux/io_uring/ |
H A D | kbuf.c | 1 // SPDX-License-Identifier: GPL-2.0 20 /* BIDs are addressed by a 16-bit field in a CQE */ 23 /* Mapped buffer ring, return io_uring_buf from head */ 24 #define io_ring_head_to_buf(br, head, mask) &(br)->bufs[(head) & (mask)] argument 41 buf = io_ring_head_to_buf(bl->buf_ring, bl->head, bl->mask); in io_kbuf_inc_commit() 42 this_len = min_t(int, len, buf->len); in io_kbuf_inc_commit() 43 buf->len -= this_len; in io_kbuf_inc_commit() 44 if (buf->len) { in io_kbuf_inc_commit() 45 buf->addr += this_len; in io_kbuf_inc_commit() 48 bl->head++; in io_kbuf_inc_commit() [all …]
|
/linux/drivers/gpu/drm/nouveau/dispnv04/ |
H A D | disp.c | 41 struct drm_device *dev = to_drm_encoder(encoder)->dev; in nv04_encoder_get_connector() 48 if (connector->encoder == to_drm_encoder(encoder)) in nv04_encoder_get_connector() 64 nvif_event_block(&disp->flip); in nv04_display_fini() 71 if (!runtime && !drm->headless) in nv04_display_fini() 72 cancel_work_sync(&drm->hpd_work); in nv04_display_fini() 77 /* Un-pin FB and cursors so they'll be evicted to system memory. */ in nv04_display_fini() 78 list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) { in nv04_display_fini() 79 struct drm_framebuffer *fb = crtc->primary->fb; in nv04_display_fini() 82 if (!fb || !fb->obj[0]) in nv04_display_fini() 84 nvbo = nouveau_gem_object(fb->obj[0]); in nv04_display_fini() [all …]
|
/linux/Documentation/core-api/ |
H A D | circular-buffers.rst | 12 (1) Convenience functions for determining information about power-of-2 sized 16 buffer don't want to share a lock. 27 (*) Measuring power-of-2 buffers. 30 - The producer. 31 - The consumer. 41 (1) A 'head' index - the point at which the producer inserts items into the 44 (2) A 'tail' index - the point at which the consumer finds the next item in 47 Typically when the tail pointer is equal to the head pointer, the buffer is 48 empty; and the buffer is full when the head pointer is one less than the tail 51 The head index is incremented when items are added, and the tail index when [all …]
|