Symbol: ct
arch/arc/include/asm/string.h
31
extern int strcmp(const char *cs, const char *ct);
arch/arm/boot/compressed/decompress.c
34
extern int strcmp(const char *cs, const char *ct);
arch/arm/boot/compressed/decompress.c
35
extern int memcmp(const void *cs, const void *ct, size_t count);
arch/arm/boot/compressed/string.c
100
const unsigned char *su1 = cs, *su2 = ct, *end = su1 + count;
arch/arm/boot/compressed/string.c
111
int strcmp(const char *cs, const char *ct)
arch/arm/boot/compressed/string.c
118
c2 = *ct++;
arch/arm/boot/compressed/string.c
98
int memcmp(const void *cs, const void *ct, size_t count)
arch/arm/mach-imx/avic.c
107
struct irq_chip_type *ct = gc->chip_types;
arch/arm/mach-imx/avic.c
110
imx_writel(avic_saved_mask_reg[idx], avic_base + ct->regs.mask);
arch/arm/mach-imx/avic.c
128
struct irq_chip_type *ct;
arch/arm/mach-imx/avic.c
135
ct = gc->chip_types;
arch/arm/mach-imx/avic.c
136
ct->chip.irq_mask = irq_gc_mask_clr_bit;
arch/arm/mach-imx/avic.c
137
ct->chip.irq_unmask = irq_gc_mask_set_bit;
arch/arm/mach-imx/avic.c
138
ct->chip.irq_ack = irq_gc_mask_clr_bit;
arch/arm/mach-imx/avic.c
139
ct->chip.irq_set_wake = irq_gc_set_wake;
arch/arm/mach-imx/avic.c
140
ct->chip.irq_suspend = avic_irq_suspend;
arch/arm/mach-imx/avic.c
141
ct->chip.irq_resume = avic_irq_resume;
arch/arm/mach-imx/avic.c
142
ct->regs.mask = !idx ? AVIC_INTENABLEL : AVIC_INTENABLEH;
arch/arm/mach-imx/avic.c
143
ct->regs.ack = ct->regs.mask;
arch/arm/mach-imx/avic.c
85
struct irq_chip_type *ct = gc->chip_types;
arch/arm/mach-imx/avic.c
88
avic_saved_mask_reg[idx] = imx_readl(avic_base + ct->regs.mask);
arch/arm/mach-imx/avic.c
89
imx_writel(gc->wake_active, avic_base + ct->regs.mask);
arch/arm/mach-imx/tzic.c
103
struct irq_chip_type *ct;
arch/arm/mach-imx/tzic.c
110
ct = gc->chip_types;
arch/arm/mach-imx/tzic.c
111
ct->chip.irq_mask = irq_gc_mask_disable_reg;
arch/arm/mach-imx/tzic.c
112
ct->chip.irq_unmask = irq_gc_unmask_enable_reg;
arch/arm/mach-imx/tzic.c
113
ct->chip.irq_set_wake = irq_gc_set_wake;
arch/arm/mach-imx/tzic.c
114
ct->chip.irq_suspend = tzic_irq_suspend;
arch/arm/mach-imx/tzic.c
115
ct->chip.irq_resume = tzic_irq_resume;
arch/arm/mach-imx/tzic.c
116
ct->regs.disable = TZIC_ENCLEAR0(idx);
arch/arm/mach-imx/tzic.c
117
ct->regs.enable = TZIC_ENSET0(idx);
arch/arm/mach-omap1/irq.c
169
struct irq_chip_type *ct;
arch/arm/mach-omap1/irq.c
173
ct = gc->chip_types;
arch/arm/mach-omap1/irq.c
174
ct->chip.irq_ack = omap_mask_ack_irq;
arch/arm/mach-omap1/irq.c
175
ct->chip.irq_mask = irq_gc_mask_set_bit;
arch/arm/mach-omap1/irq.c
176
ct->chip.irq_unmask = irq_gc_mask_clr_bit;
arch/arm/mach-omap1/irq.c
177
ct->chip.irq_set_wake = irq_gc_set_wake;
arch/arm/mach-omap1/irq.c
178
ct->regs.mask = IRQ_MIR_REG_OFFSET;
arch/arm/mach-omap1/irq.c
185
struct irq_chip_type *ct;
arch/arm/mach-omap1/irq.c
253
ct = irq_data_get_chip_type(d);
arch/arm/mach-omap1/irq.c
254
ct->chip.irq_unmask(d);
arch/arm/mach-omap1/irq.c
88
struct irq_chip_type *ct = irq_data_get_chip_type(d);
arch/arm/mach-omap1/irq.c
90
ct->chip.irq_mask(d);
arch/arm/mach-omap2/prm_common.c
271
struct irq_chip_type *ct;
arch/arm/mach-omap2/prm_common.c
331
ct = gc->chip_types;
arch/arm/mach-omap2/prm_common.c
332
ct->chip.irq_ack = irq_gc_ack_set_bit;
arch/arm/mach-omap2/prm_common.c
333
ct->chip.irq_mask = irq_gc_mask_clr_bit;
arch/arm/mach-omap2/prm_common.c
334
ct->chip.irq_unmask = irq_gc_mask_set_bit;
arch/arm/mach-omap2/prm_common.c
336
ct->regs.ack = irq_setup->ack + i * 4;
arch/arm/mach-omap2/prm_common.c
337
ct->regs.mask = irq_setup->mask + i * 4;
arch/arm/plat-orion/gpio.c
357
struct irq_chip_type *ct = irq_data_get_chip_type(d);
arch/arm/plat-orion/gpio.c
374
if (!(ct->type & type))
arch/arm/plat-orion/gpio.c
497
struct irq_chip_type *ct = irq_data_get_chip_type(d);
arch/arm/plat-orion/gpio.c
502
reg_val = irq_reg_readl(gc, ct->regs.mask);
arch/arm/plat-orion/gpio.c
504
irq_reg_writel(gc, reg_val, ct->regs.mask);
arch/arm/plat-orion/gpio.c
510
struct irq_chip_type *ct = irq_data_get_chip_type(d);
arch/arm/plat-orion/gpio.c
515
reg_val = irq_reg_readl(gc, ct->regs.mask);
arch/arm/plat-orion/gpio.c
517
irq_reg_writel(gc, reg_val, ct->regs.mask);
arch/arm/plat-orion/gpio.c
527
struct irq_chip_type *ct;
arch/arm/plat-orion/gpio.c
582
ct = gc->chip_types;
arch/arm/plat-orion/gpio.c
583
ct->regs.mask = ochip->mask_offset + GPIO_LEVEL_MASK_OFF;
arch/arm/plat-orion/gpio.c
584
ct->type = IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_LEVEL_LOW;
arch/arm/plat-orion/gpio.c
585
ct->chip.irq_mask = orion_gpio_mask_irq;
arch/arm/plat-orion/gpio.c
586
ct->chip.irq_unmask = orion_gpio_unmask_irq;
arch/arm/plat-orion/gpio.c
587
ct->chip.irq_set_type = gpio_irq_set_type;
arch/arm/plat-orion/gpio.c
588
ct->chip.name = ochip->chip.label;
arch/arm/plat-orion/gpio.c
590
ct++;
arch/arm/plat-orion/gpio.c
591
ct->regs.mask = ochip->mask_offset + GPIO_EDGE_MASK_OFF;
arch/arm/plat-orion/gpio.c
592
ct->regs.ack = GPIO_EDGE_CAUSE_OFF;
arch/arm/plat-orion/gpio.c
593
ct->type = IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING;
arch/arm/plat-orion/gpio.c
594
ct->chip.irq_ack = irq_gc_ack_clr_bit;
arch/arm/plat-orion/gpio.c
595
ct->chip.irq_mask = orion_gpio_mask_irq;
arch/arm/plat-orion/gpio.c
596
ct->chip.irq_unmask = orion_gpio_unmask_irq;
arch/arm/plat-orion/gpio.c
597
ct->chip.irq_set_type = gpio_irq_set_type;
arch/arm/plat-orion/gpio.c
598
ct->handler = handle_edge_irq;
arch/arm/plat-orion/gpio.c
599
ct->chip.name = ochip->chip.label;
arch/arm/plat-orion/irq.c
25
struct irq_chip_type *ct;
arch/arm/plat-orion/irq.c
34
ct = gc->chip_types;
arch/arm/plat-orion/irq.c
35
ct->chip.irq_mask = irq_gc_mask_clr_bit;
arch/arm/plat-orion/irq.c
36
ct->chip.irq_unmask = irq_gc_mask_set_bit;
arch/mips/alchemy/common/clock.c
305
static struct clk __init *alchemy_clk_setup_mem(const char *pn, int ct)
arch/mips/alchemy/common/clock.c
312
switch (ct) {
arch/mips/include/asm/xtalk/xwidget.h
240
unsigned ct:1;
arch/powerpc/include/asm/opal.h
293
int opal_nx_coproc_init(uint32_t chip_id, uint32_t ct);
arch/powerpc/include/asm/ps3av.h
479
u8 ct:4;
arch/powerpc/kernel/prom_init.c
228
static int __init prom_strcmp(const char *cs, const char *ct)
arch/powerpc/kernel/prom_init.c
234
c2 = *ct++;
arch/powerpc/kernel/prom_init.c
270
static int __init prom_strncmp(const char *cs, const char *ct, size_t count)
arch/powerpc/kernel/prom_init.c
276
c2 = *ct++;
arch/powerpc/kernel/prom_init.c
295
static int __init prom_memcmp(const void *cs, const void *ct, size_t count)
arch/powerpc/kernel/prom_init.c
300
for (su1 = cs, su2 = ct; 0 < count; ++su1, ++su2, count--)
arch/powerpc/perf/hv-24x7.c
1378
u64 ct;
arch/powerpc/perf/hv-24x7.c
1430
if (single_24x7_request(event, &ct)) {
arch/powerpc/perf/hv-24x7.c
1434
(void)local64_xchg(&event->hw.prev_count, ct);
arch/powerpc/perf/hv-24x7.c
1441
u64 ct;
arch/powerpc/perf/hv-24x7.c
1443
if (single_24x7_request(event, &ct))
arch/powerpc/perf/hv-24x7.c
1447
return ct;
arch/powerpc/perf/hv-24x7.c
594
unsigned int ct;
arch/powerpc/perf/hv-24x7.c
643
it->ct++;
arch/powerpc/perf/hv-24x7.c
645
name, it->ct);
arch/powerpc/perf/hv-24x7.c
646
return it->ct;
arch/powerpc/perf/hv-24x7.c
657
.ct = 0,
arch/powerpc/perf/hv-24x7.c
763
ssize_t ct, ev_len;
arch/powerpc/perf/hv-24x7.c
949
ct = event_data_to_attrs(event_idx, events + event_attr_ct,
arch/powerpc/perf/hv-24x7.c
951
if (ct < 0) {
arch/powerpc/perf/imc-pmu.c
227
int i = 0, j = 0, ct, ret;
arch/powerpc/perf/imc-pmu.c
241
ct = of_get_child_count(pmu_events);
arch/powerpc/perf/imc-pmu.c
260
pmu->events = kzalloc_objs(struct imc_events, ct);
arch/powerpc/perf/imc-pmu.c
266
ct = 0;
arch/powerpc/perf/imc-pmu.c
269
ret = imc_parse_event(np, g_scale, g_unit, prefix, base_reg, &pmu->events[ct]);
arch/powerpc/perf/imc-pmu.c
271
ct++;
arch/powerpc/perf/imc-pmu.c
279
imc_free_events(pmu->events, ct);
arch/powerpc/perf/imc-pmu.c
291
attrs = kzalloc_objs(struct attribute *, ((ct * 3) + 1));
arch/powerpc/perf/imc-pmu.c
294
imc_free_events(pmu->events, ct);
arch/powerpc/perf/imc-pmu.c
330
} while (++i < ct);
arch/powerpc/platforms/52xx/media5200.c
120
static int media5200_irq_xlate(struct irq_domain *h, struct device_node *ct,
arch/powerpc/platforms/52xx/mpc52xx_gpt.c
214
static int mpc52xx_gpt_irq_xlate(struct irq_domain *h, struct device_node *ct,
arch/powerpc/platforms/52xx/mpc52xx_gpt.c
224
dev_err(gpt->dev, "bad irq specifier in %pOF\n", ct);
arch/powerpc/platforms/52xx/mpc52xx_pic.c
305
static int mpc52xx_irqhost_xlate(struct irq_domain *h, struct device_node *ct,
arch/powerpc/platforms/85xx/socrates_fpga_pic.c
241
struct device_node *ct, const u32 *intspec, unsigned int intsize,
arch/powerpc/platforms/8xx/pic.c
98
static int mpc8xx_pic_host_xlate(struct irq_domain *h, struct device_node *ct,
arch/powerpc/sysdev/ehv_pic.c
218
static int ehv_pic_host_xlate(struct irq_domain *h, struct device_node *ct,
arch/powerpc/sysdev/ge/ge_pic.c
168
static int gef_pic_host_xlate(struct irq_domain *h, struct device_node *ct,
arch/powerpc/sysdev/i8259.c
185
static int i8259_host_xlate(struct irq_domain *h, struct device_node *ct,
arch/powerpc/sysdev/mpic.c
1088
static int mpic_host_xlate(struct irq_domain *h, struct device_node *ct,
arch/powerpc/sysdev/tsi108_pci.c
364
static int pci_irq_host_xlate(struct irq_domain *h, struct device_node *ct,
arch/powerpc/sysdev/xics/xics-common.c
358
static int xics_host_xlate(struct irq_domain *h, struct device_node *ct,
arch/powerpc/sysdev/xive/common.c
1311
static int xive_irq_domain_xlate(struct irq_domain *h, struct device_node *ct,
arch/riscv/include/asm/string.h
24
extern asmlinkage int strcmp(const char *cs, const char *ct);
arch/riscv/include/asm/string.h
30
extern asmlinkage int strncmp(const char *cs, const char *ct, size_t count);
arch/riscv/kvm/vcpu_insn.c
333
struct kvm_cpu_context *ct;
arch/riscv/kvm/vcpu_insn.c
337
ct = &vcpu->arch.guest_context;
arch/riscv/kvm/vcpu_insn.c
339
ct->sepc,
arch/riscv/kvm/vcpu_insn.c
344
utrap.sepc = ct->sepc;
arch/riscv/kvm/vcpu_insn.c
381
struct kvm_cpu_context *ct = &vcpu->arch.guest_context;
arch/riscv/kvm/vcpu_insn.c
396
insn = kvm_riscv_vcpu_unpriv_read(vcpu, true, ct->sepc,
arch/riscv/kvm/vcpu_insn.c
402
utrap.sepc = ct->sepc;
arch/riscv/kvm/vcpu_insn.c
509
struct kvm_cpu_context *ct = &vcpu->arch.guest_context;
arch/riscv/kvm/vcpu_insn.c
524
insn = kvm_riscv_vcpu_unpriv_read(vcpu, true, ct->sepc,
arch/riscv/kvm/vcpu_insn.c
530
utrap.sepc = ct->sepc;
arch/s390/boot/string.c
16
int strncmp(const char *cs, const char *ct, size_t count)
arch/s390/boot/string.c
22
c2 = *ct++;
arch/s390/include/asm/cio.h
261
__u32 ct : 4;
arch/s390/include/asm/nmi.h
82
u64 ct : 1; /* 46 cpu timer validity */
arch/s390/kernel/cache.c
129
union cache_topology ct;
arch/s390/kernel/cache.c
134
ct.raw = ecag(EXTRACT_TOPOLOGY, 0, 0);
arch/s390/kernel/cache.c
136
ctype = get_cache_type(&ct.ci[0], level);
arch/s390/kernel/cache.c
152
union cache_topology ct;
arch/s390/kernel/cache.c
155
ct.raw = ecag(EXTRACT_TOPOLOGY, 0, 0);
arch/s390/kernel/cache.c
160
pvt = (ct.ci[level].scope == CACHE_SCOPE_PRIVATE) ? 1 : 0;
arch/s390/kernel/cache.c
161
ctype = get_cache_type(&ct.ci[0], level);
arch/sh/boards/mach-se/7343/irq.c
71
struct irq_chip_type *ct;
arch/sh/boards/mach-se/7343/irq.c
81
ct = gc->chip_types;
arch/sh/boards/mach-se/7343/irq.c
82
ct->chip.irq_mask = irq_gc_mask_set_bit;
arch/sh/boards/mach-se/7343/irq.c
83
ct->chip.irq_unmask = irq_gc_mask_clr_bit;
arch/sh/boards/mach-se/7343/irq.c
85
ct->regs.mask = PA_CPLD_IMSK_REG;
arch/sh/boards/mach-se/7722/irq.c
69
struct irq_chip_type *ct;
arch/sh/boards/mach-se/7722/irq.c
79
ct = gc->chip_types;
arch/sh/boards/mach-se/7722/irq.c
80
ct->chip.irq_mask = irq_gc_mask_set_bit;
arch/sh/boards/mach-se/7722/irq.c
81
ct->chip.irq_unmask = irq_gc_mask_clr_bit;
arch/sh/boards/mach-se/7722/irq.c
83
ct->regs.mask = IRQ01_MASK_REG;
arch/x86/boot/boot.h
304
int strncmp(const char *cs, const char *ct, size_t count);
arch/x86/boot/string.c
64
int strncmp(const char *cs, const char *ct, size_t count)
arch/x86/boot/string.c
70
c2 = *ct++;
arch/x86/boot/string.h
22
extern int strncmp(const char *cs, const char *ct, size_t count);
arch/x86/events/intel/core.c
6634
EVENT_ATTR_STR(cycles-ct, cycles_ct, "event=0x3c,in_tx=1,in_tx_cp=1");
arch/x86/events/intel/core.c
7131
EVENT_ATTR_STR_HYBRID(cycles-ct, cycles_ct_adl, "event=0x3c,in_tx=1,in_tx_cp=1", hybrid_big);
arch/x86/include/asm/string_32.h
184
extern char *strstr(const char *cs, const char *ct);
arch/x86/include/asm/string_32.h
22
extern int strcmp(const char *cs, const char *ct);
arch/x86/include/asm/string_32.h
25
extern int strncmp(const char *cs, const char *ct, size_t count);
arch/x86/include/asm/string_64.h
76
int memcmp(const void *cs, const void *ct, size_t count);
arch/x86/include/asm/string_64.h
80
int strcmp(const char *cs, const char *ct);
arch/x86/kernel/callthunks.c
108
static bool is_coretext(const struct core_text *ct, void *addr)
arch/x86/kernel/callthunks.c
110
if (ct && within_coretext(ct, addr))
arch/x86/kernel/callthunks.c
206
static __init_or_module void patch_call(void *addr, const struct core_text *ct)
arch/x86/kernel/callthunks.c
211
if (!within_coretext(ct, addr))
arch/x86/kernel/callthunks.c
218
if (!is_coretext(ct, dest))
arch/x86/kernel/callthunks.c
221
pad = patch_dest(dest, within_coretext(ct, dest));
arch/x86/kernel/callthunks.c
232
patch_call_sites(s32 *start, s32 *end, const struct core_text *ct)
arch/x86/kernel/callthunks.c
237
patch_call((void *)s + *s, ct);
arch/x86/kernel/callthunks.c
241
callthunks_setup(struct callthunk_sites *cs, const struct core_text *ct)
arch/x86/kernel/callthunks.c
243
prdbg("Patching call sites %s\n", ct->name);
arch/x86/kernel/callthunks.c
244
patch_call_sites(cs->call_start, cs->call_end, ct);
arch/x86/kernel/callthunks.c
245
prdbg("Patching call sites done%s\n", ct->name);
arch/x86/kernel/callthunks.c
326
struct core_text ct = {
arch/x86/kernel/callthunks.c
336
callthunks_setup(cs, &ct);
arch/x86/kernel/callthunks.c
86
static inline bool within_coretext(const struct core_text *ct, void *addr)
arch/x86/kernel/callthunks.c
90
return ct->base <= p && p < ct->end;
arch/x86/lib/string_32.c
108
: "1" (cs), "2" (ct)
arch/x86/lib/string_32.c
116
int strncmp(const char *cs, const char *ct, size_t count)
arch/x86/lib/string_32.c
133
: "1" (cs), "2" (ct), "3" (count)
arch/x86/lib/string_32.c
93
int strcmp(const char *cs, const char *ct)
arch/x86/lib/strstr_32.c
27
: "0" (0), "1" (0xffffffff), "2" (cs), "g" (ct)
arch/x86/lib/strstr_32.c
5
char *strstr(const char *cs, const char *ct)
crypto/krb5/internal.h
139
const char *name, *plain, *conf, *K0, *Ke, *Ki, *ct;
crypto/krb5/selftest.c
246
struct krb5_buffer conf = {}, plain = {}, ct = {};
crypto/krb5/selftest.c
259
LOAD_BUF(&ct, test->ct);
crypto/krb5/selftest.c
273
VALID(ct.len != krb5->conf_len + plain.len + krb5->cksum_len))
crypto/krb5/selftest.c
280
if (CHECK(message_len != ct.len)) {
crypto/krb5/selftest.c
281
pr_warn("Encrypted length mismatch %zu != %u\n", message_len, ct.len);
crypto/krb5/selftest.c
320
if (memcmp(buf, ct.data, ct.len) != 0) {
crypto/krb5/selftest.c
323
pr_warn("BUF %*phN\n", ct.len, buf);
crypto/krb5/selftest.c
324
pr_warn("CT %*phN\n", ct.len, ct.data);
crypto/krb5/selftest.c
365
clear_buf(&ct);
crypto/krb5/selftest_data.c
107
.ct = "84D7F30754ED987BAB0BF3506BEB09CFB55402CEF7E6877CE99E247E52D16ED4421DFDF8976C",
crypto/krb5/selftest_data.c
115
.ct = "3517D640F50DDC8AD3628722B3569D2AE07493FA8263254080EA65C1008E8FC295FB4852E7D83E1E7C48C37EEBE6B0D3",
crypto/krb5/selftest_data.c
123
.ct = "720F73B18D9859CD6CCB4346115CD336C70F58EDC0C4437C5573544C31C813BCE1E6D072C186B39A413C2F92CA9B8334A287FFCBFC",
crypto/krb5/selftest_data.c
131
.ct = "41F53FA5BFE7026D91FAF9BE959195A058707273A96A40F0A01960621AC612748B9BBFBE7EB4CE3C",
crypto/krb5/selftest_data.c
139
.ct = "4ED7B37C2BCAC8F74F23C1CF07E62BC7B75FB3F637B9F559C7F664F69EAB7B6092237526EA0D1F61CB20D69D10F2",
crypto/krb5/selftest_data.c
147
.ct = "BC47FFEC7998EB91E8115CF8D19DAC4BBBE2E163E87DD37F49BECA92027764F68CF51F14D798C2273F35DF574D1F932E40C4FF255B36A266",
crypto/krb5/selftest_data.c
155
.ct = "40013E2DF58E8751957D2878BCD2D6FE101CCFD556CB1EAE79DB3C3EE86429F2B2A602AC86FEF6ECB647D6295FAE077A1FEB517508D2C16B4192E01F62",
crypto/krb5/selftest_data.c
165
.ct = "C466F1871069921EDB7C6FDE244A52DB0BA10EDC197BDB8006658CA3CCCE6EB8",
crypto/krb5/selftest_data.c
173
.ct = "842D21FD950311C0DD464A3F4BE8D6DA88A56D559C9B47D3F9A85067AF661559B8",
crypto/krb5/selftest_data.c
181
.ct = "619FF072E36286FF0A28DEB3A352EC0D0EDF5C5160D663C901758CCF9D1ED33D71DB8F23AABF8348A0",
crypto/krb5/selftest_data.c
189
.ct = "B8ECA3167AE6315512E59F98A7C500205E5F63FF3BB389AF1C41A21D640D8615C9ED3FBEB05AB6ACB67689B5EA",
crypto/krb5/selftest_data.c
197
.ct = "A26A3905A4FFD5816B7B1E27380D08090C8EC1F304496E1ABDCD2BDCD1DFFC660989E117A713DDBB57A4146C1587CBA4356665591D2240282F5842B105A5",
crypto/krb5/selftest_data.c
205
.ct = "03886D03310B47A6D8F06D7B94D1DD837ECCE315EF652AFF620859D94A259266",
crypto/krb5/selftest_data.c
213
.ct = "2C9C1570133C99BF6A34BC1B0212002FD194338749DB4135497A347CFCD9D18A12",
crypto/krb5/selftest_data.c
221
.ct = "9C6DE75F812DE7ED0D28B2963557A115640998275B0AF5152709913FF52A2A9C8E63B872F92E64C839",
crypto/krb5/selftest_data.c
229
.ct = "EEEC85A9813CDC536772AB9B42DEFC5706F726E975DDE05A87EB5406EA324CA185C9986B42AABE794B84821BEE",
crypto/krb5/selftest_data.c
237
.ct = "0E44680985855F2D1F1812529CA83BFD8E349DE6FD9ADA0BAAA048D68E265FEBF34AD1255A344999AD37146887A6C6845731AC7F46376A0504CD06571474",
crypto/krb5/selftest_data.c
99
.ct = "EF85FB890BB8472F4DAB20394DCA781DAD877EDA39D50C870C0D5A0A8E48C718",
drivers/ata/pata_legacy.c
363
int ct = 0;
drivers/ata/pata_legacy.c
411
ct++;
drivers/ata/pata_legacy.c
413
if (ct != 0)
drivers/comedi/drivers/amplc_pci230.c
680
static void pci230_ct_setup_ns_mode(struct comedi_device *dev, unsigned int ct,
drivers/comedi/drivers/amplc_pci230.c
688
comedi_8254_set_mode(dev->pacer, ct, mode);
drivers/comedi/drivers/amplc_pci230.c
692
outb(pci230_clk_config(ct, clk_src), dev->iobase + PCI230_ZCLK_SCE);
drivers/comedi/drivers/amplc_pci230.c
697
comedi_8254_write(dev->pacer, ct, count);
drivers/comedi/drivers/amplc_pci230.c
700
static void pci230_cancel_ct(struct comedi_device *dev, unsigned int ct)
drivers/comedi/drivers/amplc_pci230.c
703
comedi_8254_set_mode(dev->pacer, ct, I8254_MODE1);
drivers/crypto/nx/nx-common-powernv.c
46
unsigned int ct; /* Can be 842 or GZIP high/normal*/
drivers/crypto/nx/nx-common-powernv.c
691
vas_init_tx_win_attr(&txattr, coproc->ct);
drivers/crypto/nx/nx-common-powernv.c
697
txwin = vas_tx_win_open(coproc->vas.id, coproc->ct, &txattr);
drivers/crypto/nx/nx-common-powernv.c
728
if (coproc->ct != VAS_COP_TYPE_842_HIPRI)
drivers/crypto/nx/nx-common-powernv.c
755
coproc->ct = high;
drivers/crypto/nx/nx-common-powernv.c
757
coproc->ct = normal;
drivers/crypto/nx/nx-common-powernv.c
767
int vasid, int type, int *ct)
drivers/crypto/nx/nx-common-powernv.c
827
vas_init_rx_win_attr(&rxattr, coproc->ct);
drivers/crypto/nx/nx-common-powernv.c
843
rxwin = vas_rx_win_open(vasid, coproc->ct, &rxattr);
drivers/crypto/nx/nx-common-powernv.c
862
*ct = pid;
drivers/crypto/nx/nx-common-powernv.c
894
int *ct)
drivers/crypto/nx/nx-common-powernv.c
899
ret = vas_cfg_coproc_info(dn, chip_id, vasid, type, ct);
drivers/crypto/nx/nx-common-powernv.c
952
unsigned int ct, ci;
drivers/crypto/nx/nx-common-powernv.c
961
if (of_property_read_u32(dn, "ibm,842-coprocessor-type", &ct)) {
drivers/crypto/nx/nx-common-powernv.c
975
coproc->ct = ct;
drivers/crypto/nx/nx-common-powernv.c
979
pr_info("coprocessor found on chip %d, CT %d CI %d\n", chip_id, ct, ci);
drivers/crypto/nx/nx-common-powernv.c
982
nx842_ct = ct;
drivers/crypto/nx/nx-common-powernv.c
983
else if (nx842_ct != ct)
drivers/crypto/nx/nx-common-powernv.c
985
chip_id, ct, nx842_ct);
drivers/firmware/efi/libstub/intrinsics.c
65
int memcmp(const void *cs, const void *ct, size_t count)
drivers/firmware/efi/libstub/intrinsics.c
70
for (su1 = cs, su2 = ct; 0 < count; ++su1, ++su2, count--)
drivers/firmware/efi/libstub/string.c
101
c2 = *ct++;
drivers/firmware/efi/libstub/string.c
73
int strcmp(const char *cs, const char *ct)
drivers/firmware/efi/libstub/string.c
79
c2 = *ct++;
drivers/firmware/efi/libstub/string.c
95
int strncmp(const char *cs, const char *ct, size_t count)
drivers/firmware/stratix10-svc.c
1749
struct stratix10_svc_command_config_type *ct =
drivers/firmware/stratix10-svc.c
1752
p_data->flag = ct->flags;
drivers/gpio/gpio-ml-ioh.c
379
struct irq_chip_type *ct;
drivers/gpio/gpio-ml-ioh.c
388
ct = gc->chip_types;
drivers/gpio/gpio-ml-ioh.c
390
ct->chip.irq_mask = ioh_irq_mask;
drivers/gpio/gpio-ml-ioh.c
391
ct->chip.irq_unmask = ioh_irq_unmask;
drivers/gpio/gpio-ml-ioh.c
392
ct->chip.irq_set_type = ioh_irq_type;
drivers/gpio/gpio-ml-ioh.c
393
ct->chip.irq_disable = ioh_irq_disable;
drivers/gpio/gpio-ml-ioh.c
394
ct->chip.irq_enable = ioh_irq_enable;
drivers/gpio/gpio-mvebu.c
1121
struct irq_chip_type *ct;
drivers/gpio/gpio-mvebu.c
1265
ct = &gc->chip_types[0];
drivers/gpio/gpio-mvebu.c
1266
ct->type = IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_LEVEL_LOW;
drivers/gpio/gpio-mvebu.c
1267
ct->chip.irq_mask = mvebu_gpio_level_irq_mask;
drivers/gpio/gpio-mvebu.c
1268
ct->chip.irq_unmask = mvebu_gpio_level_irq_unmask;
drivers/gpio/gpio-mvebu.c
1269
ct->chip.irq_set_type = mvebu_gpio_irq_set_type;
drivers/gpio/gpio-mvebu.c
1270
ct->chip.name = mvchip->chip.label;
drivers/gpio/gpio-mvebu.c
1272
ct = &gc->chip_types[1];
drivers/gpio/gpio-mvebu.c
1273
ct->type = IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING;
drivers/gpio/gpio-mvebu.c
1274
ct->chip.irq_ack = mvebu_gpio_irq_ack;
drivers/gpio/gpio-mvebu.c
1275
ct->chip.irq_mask = mvebu_gpio_edge_irq_mask;
drivers/gpio/gpio-mvebu.c
1276
ct->chip.irq_unmask = mvebu_gpio_edge_irq_unmask;
drivers/gpio/gpio-mvebu.c
1277
ct->chip.irq_set_type = mvebu_gpio_irq_set_type;
drivers/gpio/gpio-mvebu.c
1278
ct->handler = handle_edge_irq;
drivers/gpio/gpio-mvebu.c
1279
ct->chip.name = mvchip->chip.label;
drivers/gpio/gpio-mvebu.c
419
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/gpio/gpio-mvebu.c
423
ct->mask_cache_priv &= ~mask;
drivers/gpio/gpio-mvebu.c
424
mvebu_gpio_write_edge_mask(mvchip, ct->mask_cache_priv);
drivers/gpio/gpio-mvebu.c
431
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/gpio/gpio-mvebu.c
436
ct->mask_cache_priv |= mask;
drivers/gpio/gpio-mvebu.c
437
mvebu_gpio_write_edge_mask(mvchip, ct->mask_cache_priv);
drivers/gpio/gpio-mvebu.c
444
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/gpio/gpio-mvebu.c
448
ct->mask_cache_priv &= ~mask;
drivers/gpio/gpio-mvebu.c
449
mvebu_gpio_write_level_mask(mvchip, ct->mask_cache_priv);
drivers/gpio/gpio-mvebu.c
456
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/gpio/gpio-mvebu.c
460
ct->mask_cache_priv |= mask;
drivers/gpio/gpio-mvebu.c
461
mvebu_gpio_write_level_mask(mvchip, ct->mask_cache_priv);
drivers/gpio/gpio-mvebu.c
493
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/gpio/gpio-mvebu.c
509
if (!(ct->type & type))
drivers/gpio/gpio-mxc.c
348
struct irq_chip_type *ct;
drivers/gpio/gpio-mxc.c
357
ct = gc->chip_types;
drivers/gpio/gpio-mxc.c
358
ct->chip.irq_ack = irq_gc_ack_set_bit;
drivers/gpio/gpio-mxc.c
359
ct->chip.irq_mask = irq_gc_mask_clr_bit;
drivers/gpio/gpio-mxc.c
360
ct->chip.irq_unmask = irq_gc_mask_set_bit;
drivers/gpio/gpio-mxc.c
361
ct->chip.irq_set_type = gpio_set_irq_type;
drivers/gpio/gpio-mxc.c
362
ct->chip.irq_set_wake = gpio_set_wake_irq;
drivers/gpio/gpio-mxc.c
363
ct->chip.flags = IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND;
drivers/gpio/gpio-mxc.c
364
ct->regs.ack = GPIO_ISR;
drivers/gpio/gpio-mxc.c
365
ct->regs.mask = GPIO_IMR;
drivers/gpio/gpio-mxs.c
190
struct irq_chip_type *ct;
drivers/gpio/gpio-mxs.c
200
ct = &gc->chip_types[0];
drivers/gpio/gpio-mxs.c
201
ct->type = IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_LEVEL_LOW;
drivers/gpio/gpio-mxs.c
202
ct->chip.irq_ack = irq_gc_ack_set_bit;
drivers/gpio/gpio-mxs.c
203
ct->chip.irq_mask = irq_gc_mask_disable_reg;
drivers/gpio/gpio-mxs.c
204
ct->chip.irq_unmask = irq_gc_unmask_enable_reg;
drivers/gpio/gpio-mxs.c
205
ct->chip.irq_set_type = mxs_gpio_set_irq_type;
drivers/gpio/gpio-mxs.c
206
ct->chip.irq_set_wake = mxs_gpio_set_wake_irq;
drivers/gpio/gpio-mxs.c
207
ct->chip.flags = IRQCHIP_SET_TYPE_MASKED;
drivers/gpio/gpio-mxs.c
208
ct->regs.ack = PINCTRL_IRQSTAT(port) + MXS_CLR;
drivers/gpio/gpio-mxs.c
209
ct->regs.enable = PINCTRL_PIN2IRQ(port) + MXS_SET;
drivers/gpio/gpio-mxs.c
210
ct->regs.disable = PINCTRL_PIN2IRQ(port) + MXS_CLR;
drivers/gpio/gpio-mxs.c
212
ct = &gc->chip_types[1];
drivers/gpio/gpio-mxs.c
213
ct->type = IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING;
drivers/gpio/gpio-mxs.c
214
ct->chip.irq_ack = irq_gc_ack_set_bit;
drivers/gpio/gpio-mxs.c
215
ct->chip.irq_mask = irq_gc_mask_disable_reg;
drivers/gpio/gpio-mxs.c
216
ct->chip.irq_unmask = irq_gc_unmask_enable_reg;
drivers/gpio/gpio-mxs.c
217
ct->chip.irq_set_type = mxs_gpio_set_irq_type;
drivers/gpio/gpio-mxs.c
218
ct->chip.irq_set_wake = mxs_gpio_set_wake_irq;
drivers/gpio/gpio-mxs.c
219
ct->chip.flags = IRQCHIP_SET_TYPE_MASKED;
drivers/gpio/gpio-mxs.c
220
ct->regs.ack = PINCTRL_IRQSTAT(port) + MXS_CLR;
drivers/gpio/gpio-mxs.c
221
ct->regs.enable = PINCTRL_IRQEN(port) + MXS_SET;
drivers/gpio/gpio-mxs.c
222
ct->regs.disable = PINCTRL_IRQEN(port) + MXS_CLR;
drivers/gpio/gpio-mxs.c
223
ct->handler = handle_level_irq;
drivers/gpio/gpio-mxs.c
70
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/gpio/gpio-mxs.c
75
if (!(ct->type & type))
drivers/gpio/gpio-pch.c
329
struct irq_chip_type *ct;
drivers/gpio/gpio-pch.c
338
ct = gc->chip_types;
drivers/gpio/gpio-pch.c
340
ct->chip.irq_ack = pch_irq_ack;
drivers/gpio/gpio-pch.c
341
ct->chip.irq_mask = pch_irq_mask;
drivers/gpio/gpio-pch.c
342
ct->chip.irq_unmask = pch_irq_unmask;
drivers/gpio/gpio-pch.c
343
ct->chip.irq_set_type = pch_irq_type;
drivers/gpio/gpio-sodaville.c
129
struct irq_chip_type *ct;
drivers/gpio/gpio-sodaville.c
160
ct = sd->gc->chip_types;
drivers/gpio/gpio-sodaville.c
161
ct->type = IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_LEVEL_LOW;
drivers/gpio/gpio-sodaville.c
162
ct->regs.eoi = GPSTR;
drivers/gpio/gpio-sodaville.c
163
ct->regs.mask = GPIO_INT;
drivers/gpio/gpio-sodaville.c
164
ct->chip.irq_mask = irq_gc_mask_clr_bit;
drivers/gpio/gpio-sodaville.c
165
ct->chip.irq_unmask = irq_gc_mask_set_bit;
drivers/gpio/gpio-sodaville.c
166
ct->chip.irq_eoi = irq_gc_eoi;
drivers/gpio/gpio-sodaville.c
167
ct->chip.irq_set_type = sdv_gpio_pub_set_type;
drivers/gpu/drm/amd/amdgpu/amdgpu_display.h
38
#define amdgpu_display_add_connector(adev, ci, sd, ct, ib, coi, h, r) (adev)->mode_info.funcs->add_connector((adev), (ci), (sd), (ct), (ib), (coi), (h), (r))
drivers/gpu/drm/amd/amdkfd/kfd_topology.c
1786
int ct = 0;
drivers/gpu/drm/amd/amdkfd/kfd_topology.c
1821
for (ct = 0; ct < num_of_cache_types; ct++) {
drivers/gpu/drm/amd/amdkfd/kfd_topology.c
1823
if (pcache_info[ct].cache_level == 1) {
drivers/gpu/drm/amd/amdkfd/kfd_topology.c
1827
for (k = 0; k < gfx_info->max_cu_per_sh; k += pcache_info[ct].num_cu_shared) {
drivers/gpu/drm/amd/amdkfd/kfd_topology.c
1830
cu_info->bitmap[xcc][i % 4][j + i / 4], ct,
drivers/gpu/drm/amd/amdkfd/kfd_topology.c
1842
num_cu_shared = ((k + pcache_info[ct].num_cu_shared) <=
drivers/gpu/drm/amd/amdkfd/kfd_topology.c
1844
pcache_info[ct].num_cu_shared :
drivers/gpu/drm/amd/amdkfd/kfd_topology.c
1853
cu_info, gfx_info, ct, cu_processor_id, kdev);
drivers/gpu/drm/drm_mode_config.c
521
struct drm_crtc *crtc, *ct;
drivers/gpu/drm/drm_mode_config.c
561
list_for_each_entry_safe(crtc, ct, &dev->mode_config.crtc_list, head) {
drivers/gpu/drm/i915/display/intel_bw.c
491
int ct, bw;
drivers/gpu/drm/i915/display/intel_bw.c
499
ct = max_t(int, sp->t_rc, sp->t_rp + sp->t_rcd +
drivers/gpu/drm/i915/display/intel_bw.c
501
bw = DIV_ROUND_UP(sp->dclk * clpchgroup * 32 * num_channels, ct);
drivers/gpu/drm/i915/display/intel_bw.c
594
int ct, bw;
drivers/gpu/drm/i915/display/intel_bw.c
602
ct = max_t(int, sp->t_rc, sp->t_rp + sp->t_rcd +
drivers/gpu/drm/i915/display/intel_bw.c
604
bw = DIV_ROUND_UP(sp->dclk * clpchgroup * 32 * num_channels, ct);
drivers/gpu/drm/i915/gt/uc/intel_guc.c
185
intel_guc_ct_init_early(&guc->ct);
drivers/gpu/drm/i915/gt/uc/intel_guc.c
442
ret = intel_guc_ct_init(&guc->ct);
drivers/gpu/drm/i915/gt/uc/intel_guc.c
472
intel_guc_ct_fini(&guc->ct);
drivers/gpu/drm/i915/gt/uc/intel_guc.c
500
intel_guc_ct_fini(&guc->ct);
drivers/gpu/drm/i915/gt/uc/intel_guc.c
955
if (i915_gem_object_is_lmem(guc->ct.vma->obj)) {
drivers/gpu/drm/i915/gt/uc/intel_guc.h
338
return intel_guc_ct_send(&guc->ct, action, len, NULL, 0, 0);
drivers/gpu/drm/i915/gt/uc/intel_guc.h
345
return intel_guc_ct_send(&guc->ct, action, len, NULL, 0,
drivers/gpu/drm/i915/gt/uc/intel_guc.h
353
return intel_guc_ct_send(&guc->ct, action, len,
drivers/gpu/drm/i915/gt/uc/intel_guc.h
39
struct intel_guc_ct ct;
drivers/gpu/drm/i915/gt/uc/intel_guc.h
397
intel_guc_ct_event_handler(&guc->ct);
drivers/gpu/drm/i915/gt/uc/intel_guc.h
470
return intel_guc_is_fw_running(guc) && intel_guc_ct_enabled(&guc->ct);
drivers/gpu/drm/i915/gt/uc/intel_guc.h
492
intel_guc_ct_sanitize(&guc->ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1001
static bool ct_check_lost_and_found(struct intel_guc_ct *ct, u32 fence)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1007
lockdep_assert_held(&ct->requests.lock);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1009
for (n = 0; n < ARRAY_SIZE(ct->requests.lost_and_found); n++) {
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1010
if (ct->requests.lost_and_found[n].fence != fence)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1016
if (buf && stack_depot_snprint(ct->requests.lost_and_found[n].stack,
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1018
CT_ERROR(ct, "Fence %u was used by action %#04x sent at\n%s",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1019
fence, ct->requests.lost_and_found[n].action, buf);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1023
CT_ERROR(ct, "Fence %u was used by action %#04x\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1024
fence, ct->requests.lost_and_found[n].action);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1031
static bool ct_check_lost_and_found(struct intel_guc_ct *ct, u32 fence)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1037
static int ct_handle_response(struct intel_guc_ct *ct, struct ct_incoming_msg *response)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1055
CT_DEBUG(ct, "response fence %u status %#x\n", fence, hxg[0]);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1057
spin_lock_irqsave(&ct->requests.lock, flags);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1058
list_for_each_entry(req, &ct->requests.pending, link) {
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1060
CT_DEBUG(ct, "request %u awaits response\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1065
CT_ERROR(ct, "Response %u too long (datalen %u > %u)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1079
if (!found && ct_to_guc(ct)->fast_response_selftest) {
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1080
CT_DEBUG(ct, "Assuming unsolicited response due to FAST_REQUEST selftest\n");
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1081
ct_to_guc(ct)->fast_response_selftest++;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1087
CT_ERROR(ct, "Unsolicited response message: len %u, data %#x (fence %u, last %u)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1088
len, hxg[0], fence, ct->requests.last_fence);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1089
if (!ct_check_lost_and_found(ct, fence)) {
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1090
list_for_each_entry(req, &ct->requests.pending, link)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1091
CT_ERROR(ct, "request %u awaits response\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1096
spin_unlock_irqrestore(&ct->requests.lock, flags);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1105
static int ct_process_request(struct intel_guc_ct *ct, struct ct_incoming_msg *request)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1107
struct intel_guc *guc = ct_to_guc(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1119
CT_DEBUG(ct, "request %x %*ph\n", action, 4 * len, payload);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1138
CT_ERROR(ct, "error capture notification failed %x %*ph\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1161
CT_ERROR(ct, "Failed to process request %04x (%pe)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1170
static bool ct_process_incoming_requests(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1177
spin_lock_irqsave(&ct->requests.lock, flags);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1178
request = list_first_entry_or_null(&ct->requests.incoming,
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1182
done = !!list_empty(&ct->requests.incoming);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1183
spin_unlock_irqrestore(&ct->requests.lock, flags);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1188
err = ct_process_request(ct, request);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1190
CT_ERROR(ct, "Failed to process CT message (%pe) %*ph\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1192
CT_DEAD(ct, PROCESS_FAILED);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1201
struct intel_guc_ct *ct =
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1206
done = ct_process_incoming_requests(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1210
static int ct_handle_event(struct intel_guc_ct *ct, struct ct_incoming_msg *request)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1227
g2h_release_space(ct, request->size);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1235
return ct_process_request(ct, request);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1237
spin_lock_irqsave(&ct->requests.lock, flags);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1238
list_add_tail(&request->link, &ct->requests.incoming);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1239
spin_unlock_irqrestore(&ct->requests.lock, flags);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1241
queue_work(system_unbound_wq, &ct->requests.worker);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1245
static int ct_handle_hxg(struct intel_guc_ct *ct, struct ct_incoming_msg *msg)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1265
err = ct_handle_event(ct, msg);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1270
err = ct_handle_response(ct, msg);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1278
CT_ERROR(ct, "Failed to handle HXG message (%pe) %*ph\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1284
static void ct_handle_msg(struct intel_guc_ct *ct, struct ct_incoming_msg *msg)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1290
err = ct_handle_hxg(ct, msg);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1295
CT_ERROR(ct, "Failed to process CT message (%pe) %*ph\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1305
static int ct_receive(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1311
spin_lock_irqsave(&ct->ctbs.recv.lock, flags);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1312
ret = ct_read(ct, &msg);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1313
spin_unlock_irqrestore(&ct->ctbs.recv.lock, flags);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1318
ct_handle_msg(ct, msg);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1323
static void ct_try_receive_message(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1325
struct intel_guc *guc = ct_to_guc(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1328
if (!ct->enabled) {
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1337
ret = ct_receive(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1339
tasklet_hi_schedule(&ct->receive_tasklet);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1344
struct intel_guc_ct *ct = from_tasklet(ct, t, receive_tasklet);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1346
ct_try_receive_message(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1353
void intel_guc_ct_event_handler(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1355
if (unlikely(!ct->enabled)) {
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1360
ct_try_receive_message(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1363
void intel_guc_ct_print_info(struct intel_guc_ct *ct,
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1366
drm_printf(p, "CT %s\n", str_enabled_disabled(ct->enabled));
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1368
if (!ct->enabled)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1372
atomic_read(&ct->ctbs.send.space) * 4);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1374
ct->ctbs.send.desc->head);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1376
ct->ctbs.send.desc->tail);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1378
atomic_read(&ct->ctbs.recv.space) * 4);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1380
ct->ctbs.recv.desc->head);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1382
ct->ctbs.recv.desc->tail);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1388
struct intel_guc_ct *ct = container_of(w, struct intel_guc_ct, dead_ct_worker);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1389
struct intel_guc *guc = ct_to_guc(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1391
if (ct->dead_ct_reported)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1394
ct->dead_ct_reported = true;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
1396
guc_info(guc, "CTB is dead - reason=0x%X\n", ct->dead_ct_reason);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
141
void intel_guc_ct_init_early(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
143
spin_lock_init(&ct->ctbs.send.lock);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
144
spin_lock_init(&ct->ctbs.recv.lock);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
145
spin_lock_init(&ct->requests.lock);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
146
INIT_LIST_HEAD(&ct->requests.pending);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
147
INIT_LIST_HEAD(&ct->requests.incoming);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
149
INIT_WORK(&ct->dead_ct_worker, ct_dead_ct_worker_func);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
151
INIT_WORK(&ct->requests.worker, ct_incoming_request_worker_func);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
152
tasklet_setup(&ct->receive_tasklet, ct_receive_tasklet_func);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
153
init_waitqueue_head(&ct->wq);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
206
static int ct_control_enable(struct intel_guc_ct *ct, bool enable)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
210
err = guc_action_control_ctb(ct_to_guc(ct), enable ?
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
213
CT_PROBE_ERROR(ct, "Failed to control/%s CTB (%pe)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
219
static int ct_register_buffer(struct intel_guc_ct *ct, bool send,
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
224
err = intel_guc_self_cfg64(ct_to_guc(ct), send ?
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
231
err = intel_guc_self_cfg64(ct_to_guc(ct), send ?
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
238
err = intel_guc_self_cfg32(ct_to_guc(ct), send ?
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
244
CT_PROBE_ERROR(ct, "Failed to register %s buffer (%pe)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
258
int intel_guc_ct_init(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
260
struct intel_guc *guc = ct_to_guc(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
269
GEM_BUG_ON(ct->vma);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
272
err = intel_guc_allocate_and_map_vma(guc, blob_size, &ct->vma, &blob);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
274
CT_PROBE_ERROR(ct, "Failed to allocate %u for CTB data (%pe)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
279
CT_DEBUG(ct, "base=%#x size=%u\n", intel_guc_ggtt_offset(guc, ct->vma), blob_size);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
286
CT_DEBUG(ct, "%s desc %#tx cmds %#tx size %u/%u\n", "send",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
290
guc_ct_buffer_init(&ct->ctbs.send, desc, cmds, cmds_size, resv_space);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
297
CT_DEBUG(ct, "%s desc %#tx cmds %#tx size %u/%u\n", "recv",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
30
#define CT_DEAD(ct, reason) \
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
301
guc_ct_buffer_init(&ct->ctbs.recv, desc, cmds, cmds_size, resv_space);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
313
void intel_guc_ct_fini(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
315
GEM_BUG_ON(ct->enabled);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
317
tasklet_kill(&ct->receive_tasklet);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
318
i915_vma_unpin_and_release(&ct->vma, I915_VMA_RELEASE_MAP);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
319
memset(ct, 0, sizeof(*ct));
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
32
if (!(ct)->dead_ct_reported) { \
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
328
int intel_guc_ct_enable(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
33
(ct)->dead_ct_reason |= 1 << CT_DEAD_##reason; \
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
330
struct intel_guc *guc = ct_to_guc(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
335
GEM_BUG_ON(ct->enabled);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
338
GEM_BUG_ON(!ct->vma);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
339
GEM_BUG_ON(!i915_gem_object_has_pinned_pages(ct->vma->obj));
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
34
queue_work(system_unbound_wq, &(ct)->dead_ct_worker); \
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
340
base = intel_guc_ggtt_offset(guc, ct->vma);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
343
blob = __px_vaddr(ct->vma->obj);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
344
GEM_BUG_ON(blob != ct->ctbs.send.desc);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
347
guc_ct_buffer_reset(&ct->ctbs.send);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
348
guc_ct_buffer_reset(&ct->ctbs.recv);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
354
desc = base + ptrdiff(ct->ctbs.recv.desc, blob);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
355
cmds = base + ptrdiff(ct->ctbs.recv.cmds, blob);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
356
size = ct->ctbs.recv.size * 4;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
357
err = ct_register_buffer(ct, false, desc, cmds, size);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
361
desc = base + ptrdiff(ct->ctbs.send.desc, blob);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
362
cmds = base + ptrdiff(ct->ctbs.send.cmds, blob);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
363
size = ct->ctbs.send.size * 4;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
364
err = ct_register_buffer(ct, true, desc, cmds, size);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
368
err = ct_control_enable(ct, true);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
372
ct->enabled = true;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
373
ct->stall_time = KTIME_MAX;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
375
ct->dead_ct_reported = false;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
376
ct->dead_ct_reason = CT_DEAD_ALIVE;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
38
#define CT_DEAD(ct, reason) do { } while (0)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
382
CT_PROBE_ERROR(ct, "Failed to enable CTB (%pe)\n", ERR_PTR(err));
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
383
CT_DEAD(ct, SETUP);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
391
void intel_guc_ct_disable(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
393
struct intel_guc *guc = ct_to_guc(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
395
GEM_BUG_ON(!ct->enabled);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
397
ct->enabled = false;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
400
ct_control_enable(ct, false);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
405
static void ct_track_lost_and_found(struct intel_guc_ct *ct, u32 fence, u32 action)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
407
unsigned int lost = fence % ARRAY_SIZE(ct->requests.lost_and_found);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
41
static inline struct intel_guc *ct_to_guc(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
415
ct->requests.lost_and_found[lost].stack = stack_depot_save(entries, n, GFP_NOWAIT);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
417
ct->requests.lost_and_found[lost].fence = fence;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
418
ct->requests.lost_and_found[lost].action = action;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
422
static u32 ct_get_next_fence(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
425
return ++ct->requests.last_fence;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
428
static int ct_write(struct intel_guc_ct *ct,
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
43
return container_of(ct, struct intel_guc, ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
433
struct intel_guc_ct_buffer *ctb = &ct->ctbs.send;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
450
CT_ERROR(ct, "Tail was modified %u != %u\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
456
CT_ERROR(ct, "Invalid head offset %u >= %u)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
478
CT_DEBUG(ct, "writing (tail %u) %*ph %*ph %*ph\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
494
ct_track_lost_and_found(ct, fence,
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
502
intel_guc_write_barrier(ct_to_guc(ct));
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
515
CT_ERROR(ct, "Corrupted descriptor head=%u tail=%u status=%#x\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
517
CT_DEAD(ct, WRITE);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
537
static int wait_for_ct_request_update(struct intel_guc_ct *ct, struct ct_request *req, u32 *status)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
55
guc_probe_error(ct_to_guc(ct), "CT: " _fmt, ##__VA_ARGS__)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
552
(!(ct_enabled = intel_guc_ct_enabled(ct)) || \
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
567
static inline bool ct_deadlocked(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
570
bool ret = ktime_ms_delta(ktime_get(), ct->stall_time) > timeout;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
573
struct guc_ct_buffer_desc *send = ct->ctbs.send.desc;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
574
struct guc_ct_buffer_desc *recv = ct->ctbs.send.desc;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
576
CT_ERROR(ct, "Communication stalled for %lld ms, desc status=%#x,%#x\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
577
ktime_ms_delta(ktime_get(), ct->stall_time),
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
579
CT_ERROR(ct, "H2G Space: %u (Bytes)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
580
atomic_read(&ct->ctbs.send.space) * 4);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
581
CT_ERROR(ct, "Head: %u (Dwords)\n", ct->ctbs.send.desc->head);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
582
CT_ERROR(ct, "Tail: %u (Dwords)\n", ct->ctbs.send.desc->tail);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
583
CT_ERROR(ct, "G2H Space: %u (Bytes)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
584
atomic_read(&ct->ctbs.recv.space) * 4);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
585
CT_ERROR(ct, "Head: %u\n (Dwords)", ct->ctbs.recv.desc->head);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
586
CT_ERROR(ct, "Tail: %u\n (Dwords)", ct->ctbs.recv.desc->tail);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
588
CT_DEAD(ct, DEADLOCK);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
589
ct->ctbs.send.broken = true;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
595
static inline bool g2h_has_room(struct intel_guc_ct *ct, u32 g2h_len_dw)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
597
struct intel_guc_ct_buffer *ctb = &ct->ctbs.recv;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
606
static inline void g2h_reserve_space(struct intel_guc_ct *ct, u32 g2h_len_dw)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
608
lockdep_assert_held(&ct->ctbs.send.lock);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
610
GEM_BUG_ON(!g2h_has_room(ct, g2h_len_dw));
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
613
atomic_sub(g2h_len_dw, &ct->ctbs.recv.space);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
616
static inline void g2h_release_space(struct intel_guc_ct *ct, u32 g2h_len_dw)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
618
atomic_add(g2h_len_dw, &ct->ctbs.recv.space);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
621
static inline bool h2g_has_room(struct intel_guc_ct *ct, u32 len_dw)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
623
struct intel_guc_ct_buffer *ctb = &ct->ctbs.send;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
633
CT_ERROR(ct, "Invalid head offset %u >= %u)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
637
CT_DEAD(ct, H2G_HAS_ROOM);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
647
static int has_room_nb(struct intel_guc_ct *ct, u32 h2g_dw, u32 g2h_dw)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
649
bool h2g = h2g_has_room(ct, h2g_dw);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
650
bool g2h = g2h_has_room(ct, g2h_dw);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
652
lockdep_assert_held(&ct->ctbs.send.lock);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
655
if (ct->stall_time == KTIME_MAX)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
656
ct->stall_time = ktime_get();
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
660
tasklet_hi_schedule(&ct->receive_tasklet);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
662
if (unlikely(ct_deadlocked(ct)))
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
668
ct->stall_time = KTIME_MAX;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
678
static int ct_send_nb(struct intel_guc_ct *ct,
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
683
struct intel_guc_ct_buffer *ctb = &ct->ctbs.send;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
691
ret = has_room_nb(ct, len + GUC_CTB_HDR_LEN, g2h_len_dw);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
695
fence = ct_get_next_fence(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
696
ret = ct_write(ct, action, len, fence, flags);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
700
g2h_reserve_space(ct, g2h_len_dw);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
701
intel_guc_notify(ct_to_guc(ct));
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
709
static int ct_send(struct intel_guc_ct *ct,
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
716
struct intel_guc_ct_buffer *ctb = &ct->ctbs.send;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
724
GEM_BUG_ON(!ct->enabled);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
741
if (unlikely(!h2g_has_room(ct, len + GUC_CTB_HDR_LEN) ||
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
742
!g2h_has_room(ct, GUC_CTB_HXG_MSG_MAX_LEN))) {
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
743
if (ct->stall_time == KTIME_MAX)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
744
ct->stall_time = ktime_get();
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
747
if (unlikely(ct_deadlocked(ct)))
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
757
ct->stall_time = KTIME_MAX;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
759
fence = ct_get_next_fence(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
765
spin_lock(&ct->requests.lock);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
766
list_add_tail(&request.link, &ct->requests.pending);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
767
spin_unlock(&ct->requests.lock);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
769
err = ct_write(ct, action, len, fence, 0);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
770
g2h_reserve_space(ct, GUC_CTB_HXG_MSG_MAX_LEN);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
777
intel_guc_notify(ct_to_guc(ct));
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
779
err = wait_for_ct_request_update(ct, &request, status);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
780
g2h_release_space(ct, GUC_CTB_HXG_MSG_MAX_LEN);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
786
CT_DEBUG(ct, "Request %#x (fence %u) cancelled as CTB is disabled\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
789
CT_ERROR(ct, "No response for request %#x (fence %u)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
795
CT_DEBUG(ct, "retrying request %#x (%u)\n", *action,
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
819
spin_lock_irqsave(&ct->requests.lock, flags);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
821
spin_unlock_irqrestore(&ct->requests.lock, flags);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
832
int intel_guc_ct_send(struct intel_guc_ct *ct, const u32 *action, u32 len,
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
838
if (unlikely(!ct->enabled)) {
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
839
struct intel_guc *guc = ct_to_guc(ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
846
if (unlikely(ct->ctbs.send.broken))
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
850
return ct_send_nb(ct, action, len, flags);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
852
ret = ct_send(ct, action, len, response_buf, response_buf_size, &status);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
855
CT_ERROR(ct, "Sending action %#x failed (%pe) status=%#X\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
858
CT_DEBUG(ct, "send action %#x returned %d (%#x)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
884
static int ct_read(struct intel_guc_ct *ct, struct ct_incoming_msg **msg)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
886
struct intel_guc_ct_buffer *ctb = &ct->ctbs.recv;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
909
CT_ERROR(ct, "Unexpected G2H after GuC has stopped!\n");
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
921
CT_ERROR(ct, "Head was modified %u != %u\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
928
CT_ERROR(ct, "Invalid tail offset %u >= %u)\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
944
CT_DEBUG(ct, "available %d (%u:%u:%u)\n", available, head, tail, size);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
953
CT_ERROR(ct, "Incomplete message %*ph %*ph %*ph\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
965
CT_ERROR(ct, "No memory for message %*ph %*ph %*ph\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
980
CT_DEBUG(ct, "received %*ph\n", 4 * len, (*msg)->msg);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
988
intel_guc_write_barrier(ct_to_guc(ct));
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
993
CT_ERROR(ct, "Corrupted descriptor head=%u tail=%u status=%#x\n",
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
996
CT_DEAD(ct, READ);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
109
void intel_guc_ct_init_early(struct intel_guc_ct *ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
110
int intel_guc_ct_init(struct intel_guc_ct *ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
111
void intel_guc_ct_fini(struct intel_guc_ct *ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
112
int intel_guc_ct_enable(struct intel_guc_ct *ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
113
void intel_guc_ct_disable(struct intel_guc_ct *ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
115
static inline void intel_guc_ct_sanitize(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
117
ct->enabled = false;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
120
static inline bool intel_guc_ct_enabled(struct intel_guc_ct *ct)
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
122
return ct->enabled;
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
133
int intel_guc_ct_send(struct intel_guc_ct *ct, const u32 *action, u32 len,
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
135
void intel_guc_ct_event_handler(struct intel_guc_ct *ct);
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
137
void intel_guc_ct_print_info(struct intel_guc_ct *ct, struct drm_printer *p);
drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.c
32
intel_guc_ct_print_info(&guc->ct, &p);
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
1685
GEM_BUG_ON(!guc->ct.enabled);
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
1701
GEM_BUG_ON(!guc->ct.enabled);
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
1742
tasklet_disable(&guc->ct.receive_tasklet);
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
1743
tasklet_enable(&guc->ct.receive_tasklet);
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
1747
flush_work(&guc->ct.requests.worker);
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
2809
GEM_BUG_ON(i915_gem_object_is_lmem(guc->ct.vma->obj) !=
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
2876
GEM_BUG_ON(i915_gem_object_is_lmem(guc->ct.vma->obj) !=
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
614
wake_up_all(&guc->ct.wq);
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
661
prepare_to_wait(&guc->ct.wq, &wait, state);
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
678
finish_wait(&guc->ct.wq, &wait);
drivers/gpu/drm/i915/gt/uc/intel_uc.c
206
GEM_BUG_ON(!intel_guc_ct_enabled(&guc->ct));
drivers/gpu/drm/i915/gt/uc/intel_uc.c
221
GEM_BUG_ON(intel_guc_ct_enabled(&guc->ct));
drivers/gpu/drm/i915/gt/uc/intel_uc.c
223
ret = intel_guc_ct_enable(&guc->ct);
drivers/gpu/drm/i915/gt/uc/intel_uc.c
235
intel_guc_ct_event_handler(&guc->ct);
drivers/gpu/drm/i915/gt/uc/intel_uc.c
254
intel_guc_ct_disable(&guc->ct);
drivers/gpu/drm/i915/gt/uc/intel_uc.c
704
GEM_BUG_ON(enable_communication == intel_guc_ct_enabled(&guc->ct));
drivers/gpu/drm/i915/i915_gpu_error.c
1852
error_uc->guc.vma_ctb = create_vma_coredump(gt->_gt, uc->guc.ct.vma,
drivers/gpu/drm/i915/i915_gpu_error.c
1854
error_uc->guc.last_fence = uc->guc.ct.requests.last_fence;
drivers/gpu/drm/i915/i915_gpu_error.c
1855
gt_record_guc_ctb(error_uc->guc.ctb + 0, &uc->guc.ct.ctbs.send,
drivers/gpu/drm/i915/i915_gpu_error.c
1856
uc->guc.ct.ctbs.send.desc, (struct intel_guc *)&uc->guc);
drivers/gpu/drm/i915/i915_gpu_error.c
1857
gt_record_guc_ctb(error_uc->guc.ctb + 1, &uc->guc.ct.ctbs.recv,
drivers/gpu/drm/i915/i915_gpu_error.c
1858
uc->guc.ct.ctbs.send.desc, (struct intel_guc *)&uc->guc);
drivers/gpu/drm/imx/dc/dc-ic.c
116
struct irq_chip_type *ct;
drivers/gpu/drm/imx/dc/dc-ic.c
199
ct = gc->chip_types;
drivers/gpu/drm/imx/dc/dc-ic.c
200
ct->chip.irq_ack = irq_gc_ack_set_bit;
drivers/gpu/drm/imx/dc/dc-ic.c
201
ct->chip.irq_mask = irq_gc_mask_clr_bit;
drivers/gpu/drm/imx/dc/dc-ic.c
202
ct->chip.irq_unmask = irq_gc_mask_set_bit;
drivers/gpu/drm/imx/dc/dc-ic.c
203
ct->regs.ack = USERINTERRUPTCLEAR(i / 32);
drivers/gpu/drm/imx/dc/dc-ic.c
204
ct->regs.mask = USERINTERRUPTENABLE(i / 32);
drivers/gpu/drm/nouveau/dispnv04/disp.c
216
struct drm_connector *connector, *ct;
drivers/gpu/drm/nouveau/dispnv04/disp.c
281
list_for_each_entry_safe(connector, ct,
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.c
544
char ct[8] = "HUB/";
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.c
568
snprintf(ct, sizeof(ct), "GPC%d/", info->gpc);
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.c
596
info->client, ct, ec ? ec->name : "",
drivers/gpu/drm/omapdrm/dss/dispc.c
831
const struct csc_coef_yuv2rgb *ct)
drivers/gpu/drm/omapdrm/dss/dispc.c
835
dispc_write_reg(dispc, DISPC_OVL_CONV_COEF(plane, 0), CVAL(ct->rcr, ct->ry));
drivers/gpu/drm/omapdrm/dss/dispc.c
836
dispc_write_reg(dispc, DISPC_OVL_CONV_COEF(plane, 1), CVAL(ct->gy, ct->rcb));
drivers/gpu/drm/omapdrm/dss/dispc.c
837
dispc_write_reg(dispc, DISPC_OVL_CONV_COEF(plane, 2), CVAL(ct->gcb, ct->gcr));
drivers/gpu/drm/omapdrm/dss/dispc.c
838
dispc_write_reg(dispc, DISPC_OVL_CONV_COEF(plane, 3), CVAL(ct->bcr, ct->by));
drivers/gpu/drm/omapdrm/dss/dispc.c
839
dispc_write_reg(dispc, DISPC_OVL_CONV_COEF(plane, 4), CVAL(0, ct->bcb));
drivers/gpu/drm/omapdrm/dss/dispc.c
841
REG_FLD_MOD(dispc, DISPC_OVL_ATTRIBUTES(plane), ct->full_range, 11, 11);
drivers/gpu/drm/radeon/radeon_atombios.c
602
uint32_t slot_config, ct;
drivers/gpu/drm/radeon/radeon_atombios.c
613
ct = (slot_config >> 16) & 0xff;
drivers/gpu/drm/radeon/radeon_atombios.c
616
[ct];
drivers/gpu/drm/radeon/radeon_atombios.c
617
connector_object_id = ct;
drivers/gpu/drm/xe/tests/xe_guc_g2g_test.c
87
ret = xe_guc_ct_send(&guc->ct, action, total, 0, 0);
drivers/gpu/drm/xe/tests/xe_guc_relay_test.c
222
static int replacement_xe_guc_ct_send_recv_loopback_relay(struct xe_guc_ct *ct,
drivers/gpu/drm/xe/tests/xe_guc_relay_test.c
233
KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ct);
drivers/gpu/drm/xe/tests/xe_guc_relay_test.c
61
static int replacement_xe_guc_ct_send_recv_always_fails(struct xe_guc_ct *ct,
drivers/gpu/drm/xe/tests/xe_guc_relay_test.c
67
KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ct);
drivers/gpu/drm/xe/tests/xe_guc_relay_test.c
74
static int replacement_xe_guc_ct_send_recv_expects_pf2guc_relay(struct xe_guc_ct *ct,
drivers/gpu/drm/xe/tests/xe_guc_relay_test.c
80
KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ct);
drivers/gpu/drm/xe/xe_devcoredump.c
120
xe_guc_ct_snapshot_print(ss->guc.ct, &p);
drivers/gpu/drm/xe/xe_devcoredump.c
149
xe_guc_ct_snapshot_free(ss->guc.ct);
drivers/gpu/drm/xe/xe_devcoredump.c
150
ss->guc.ct = NULL;
drivers/gpu/drm/xe/xe_devcoredump.c
351
ss->guc.ct = xe_guc_ct_snapshot_capture(&guc->ct);
drivers/gpu/drm/xe/xe_devcoredump_types.h
44
struct xe_guc_ct_snapshot *ct;
drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c
55
return xe_guc_ct_send_block(&guc->ct, request, ARRAY_SIZE(request));
drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c
57
ret = xe_guc_ct_send_block(&guc->ct, request, ARRAY_SIZE(request));
drivers/gpu/drm/xe/xe_gt_sriov_pf_migration.c
168
return xe_guc_ct_send_block(&guc->ct, request, ARRAY_SIZE(request));
drivers/gpu/drm/xe/xe_gt_sriov_pf_policy.c
34
return xe_guc_ct_send_block(&guc->ct, request, ARRAY_SIZE(request));
drivers/gpu/drm/xe/xe_gt_sriov_vf.c
1240
xe_guc_ct_flush_and_stop(&gt->uc.guc.ct);
drivers/gpu/drm/xe/xe_gt_sriov_vf.c
1286
xe_guc_ct_restart(&gt->uc.guc.ct);
drivers/gpu/drm/xe/xe_gt_sriov_vf.c
857
xe_guc_ct_wake_waiters(&gt->uc.guc.ct);
drivers/gpu/drm/xe/xe_guc.c
1341
err = xe_guc_ct_enable(&guc->ct);
drivers/gpu/drm/xe/xe_guc.c
1410
return xe_guc_ct_send_block(&guc->ct, action, ARRAY_SIZE(action));
drivers/gpu/drm/xe/xe_guc.c
1606
xe_guc_ct_irq_handler(&guc->ct);
drivers/gpu/drm/xe/xe_guc.c
1615
xe_guc_ct_disable(&guc->ct);
drivers/gpu/drm/xe/xe_guc.c
1642
xe_guc_ct_stop(&guc->ct);
drivers/gpu/drm/xe/xe_guc.c
1663
xe_guc_ct_runtime_suspend(&guc->ct);
drivers/gpu/drm/xe/xe_guc.c
1681
xe_guc_ct_runtime_resume(&guc->ct);
drivers/gpu/drm/xe/xe_guc.c
1719
xe_guc_ct_print(&guc->ct, p, false);
drivers/gpu/drm/xe/xe_guc.c
1739
xe_guc_ct_stop(&guc->ct);
drivers/gpu/drm/xe/xe_guc.c
310
return xe_guc_ct_send_block(&guc->ct, action, ARRAY_SIZE(action));
drivers/gpu/drm/xe/xe_guc.c
326
return xe_guc_ct_send_block(&guc->ct, action, ARRAY_SIZE(action));
drivers/gpu/drm/xe/xe_guc.c
589
return xe_guc_ct_send_block(&guc->ct, action, ARRAY_SIZE(action));
drivers/gpu/drm/xe/xe_guc.c
735
ret = xe_guc_ct_init_noalloc(&guc->ct);
drivers/gpu/drm/xe/xe_guc.c
775
ret = xe_guc_ct_init(&guc->ct);
drivers/gpu/drm/xe/xe_guc.c
793
ret = xe_guc_ct_init(&guc->ct);
drivers/gpu/drm/xe/xe_guc.c
854
ret = xe_guc_ct_init_post_hwconfig(&guc->ct);
drivers/gpu/drm/xe/xe_guc_ads.c
972
struct xe_guc_ct *ct = &ads_to_guc(ads)->ct;
drivers/gpu/drm/xe/xe_guc_ads.c
978
return xe_guc_ct_send(ct, action, ARRAY_SIZE(action), 0, 0);
drivers/gpu/drm/xe/xe_guc_capture.c
1370
return xe_guc_ct_send_g2h_handler(&guc->ct, action, ARRAY_SIZE(action));
drivers/gpu/drm/xe/xe_guc_ct.c
1004
h2g_reserve_space(ct, full_len);
drivers/gpu/drm/xe/xe_guc_ct.c
101
static void fast_req_stack_save(struct xe_guc_ct *ct, unsigned int slot)
drivers/gpu/drm/xe/xe_guc_ct.c
1015
CT_DEAD(ct, &ct->ctbs.h2g, H2G_WRITE);
drivers/gpu/drm/xe/xe_guc_ct.c
1019
static int __guc_ct_send_locked(struct xe_guc_ct *ct, const u32 *action,
drivers/gpu/drm/xe/xe_guc_ct.c
1023
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1027
xe_gt_assert(gt, xe_guc_ct_initialized(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
1032
lockdep_assert_held(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1034
if (unlikely(ct->ctbs.h2g.info.broken)) {
drivers/gpu/drm/xe/xe_guc_ct.c
1039
if (ct->state == XE_GUC_CT_STATE_DISABLED) {
drivers/gpu/drm/xe/xe_guc_ct.c
1044
if (ct->state == XE_GUC_CT_STATE_STOPPED || xe_gt_recovery_pending(gt)) {
drivers/gpu/drm/xe/xe_guc_ct.c
1049
xe_gt_assert(gt, xe_guc_ct_enabled(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
1056
g2h_fence->seqno = next_ct_seqno(ct, true);
drivers/gpu/drm/xe/xe_guc_ct.c
1057
ret = xa_err(xa_store(&ct->fence_lookup,
drivers/gpu/drm/xe/xe_guc_ct.c
1066
seqno = next_ct_seqno(ct, false);
drivers/gpu/drm/xe/xe_guc_ct.c
1070
spin_lock_irq(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1072
ret = has_room(ct, len + GUC_CTB_HDR_LEN, g2h_len);
drivers/gpu/drm/xe/xe_guc_ct.c
1076
ret = h2g_write(ct, action, len, seqno, !!g2h_fence);
drivers/gpu/drm/xe/xe_guc_ct.c
1083
__g2h_reserve_space(ct, g2h_len, num_g2h);
drivers/gpu/drm/xe/xe_guc_ct.c
1084
xe_guc_notify(ct_to_guc(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
1087
spin_unlock_irq(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
109
ct->fast_req[slot].stack = stack_depot_save(entries, n, GFP_NOWAIT);
drivers/gpu/drm/xe/xe_guc_ct.c
1092
static void kick_reset(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
1094
xe_gt_reset_async(ct_to_gt(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
1097
static int dequeue_one_g2h(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1103
static bool guc_ct_send_wait_for_retry(struct xe_guc_ct *ct, u32 len,
drivers/gpu/drm/xe/xe_guc_ct.c
1107
struct xe_device *xe = ct_to_xe(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1116
if (!h2g_has_room(ct, len + GUC_CTB_HDR_LEN)) {
drivers/gpu/drm/xe/xe_guc_ct.c
1117
struct guc_ctb *h2g = &ct->ctbs.h2g;
drivers/gpu/drm/xe/xe_guc_ct.c
1129
struct xe_device *xe = ct_to_xe(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
113
static void fast_req_dump(struct xe_guc_ct *ct, u16 fence, unsigned int slot)
drivers/gpu/drm/xe/xe_guc_ct.c
1130
struct guc_ctb *g2h = &ct->ctbs.g2h;
drivers/gpu/drm/xe/xe_guc_ct.c
1141
#define g2h_avail(ct) \
drivers/gpu/drm/xe/xe_guc_ct.c
1142
(desc_read(ct_to_xe(ct), (&ct->ctbs.g2h), tail) != ct->ctbs.g2h.info.head)
drivers/gpu/drm/xe/xe_guc_ct.c
1143
if (!wait_event_timeout(ct->wq, !ct->g2h_outstanding ||
drivers/gpu/drm/xe/xe_guc_ct.c
1144
g2h_avail(ct), HZ))
drivers/gpu/drm/xe/xe_guc_ct.c
1148
ret = dequeue_one_g2h(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
115
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1151
xe_gt_err(ct_to_gt(ct), "CTB receive failed (%pe)",
drivers/gpu/drm/xe/xe_guc_ct.c
1159
static int guc_ct_send_locked(struct xe_guc_ct *ct, const u32 *action, u32 len,
drivers/gpu/drm/xe/xe_guc_ct.c
1163
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1168
lockdep_assert_held(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1169
xe_device_assert_mem_access(ct_to_xe(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
1172
ret = __guc_ct_send_locked(ct, action, len, g2h_len, num_g2h,
drivers/gpu/drm/xe/xe_guc_ct.c
1176
if (!guc_ct_send_wait_for_retry(ct, len, g2h_len, g2h_fence,
drivers/gpu/drm/xe/xe_guc_ct.c
1186
CT_DEAD(ct, &ct->ctbs.h2g, DEADLOCK);
drivers/gpu/drm/xe/xe_guc_ct.c
119
if (buf && stack_depot_snprint(ct->fast_req[slot].stack, buf, SZ_4K, 0))
drivers/gpu/drm/xe/xe_guc_ct.c
1191
static int guc_ct_send(struct xe_guc_ct *ct, const u32 *action, u32 len,
drivers/gpu/drm/xe/xe_guc_ct.c
1196
xe_gt_assert(ct_to_gt(ct), !g2h_len || !g2h_fence);
drivers/gpu/drm/xe/xe_guc_ct.c
1198
mutex_lock(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1199
ret = guc_ct_send_locked(ct, action, len, g2h_len, num_g2h, g2h_fence);
drivers/gpu/drm/xe/xe_guc_ct.c
1200
mutex_unlock(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1205
int xe_guc_ct_send(struct xe_guc_ct *ct, const u32 *action, u32 len,
drivers/gpu/drm/xe/xe_guc_ct.c
121
fence, ct->fast_req[slot].action, buf);
drivers/gpu/drm/xe/xe_guc_ct.c
1210
ret = guc_ct_send(ct, action, len, g2h_len, num_g2h, NULL);
drivers/gpu/drm/xe/xe_guc_ct.c
1212
kick_reset(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1217
int xe_guc_ct_send_locked(struct xe_guc_ct *ct, const u32 *action, u32 len,
drivers/gpu/drm/xe/xe_guc_ct.c
1222
ret = guc_ct_send_locked(ct, action, len, g2h_len, num_g2h, NULL);
drivers/gpu/drm/xe/xe_guc_ct.c
1224
kick_reset(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1229
int xe_guc_ct_send_g2h_handler(struct xe_guc_ct *ct, const u32 *action, u32 len)
drivers/gpu/drm/xe/xe_guc_ct.c
1233
lockdep_assert_held(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1235
ret = guc_ct_send_locked(ct, action, len, 0, 0, NULL);
drivers/gpu/drm/xe/xe_guc_ct.c
1237
kick_reset(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
124
fence, ct->fast_req[slot].action);
drivers/gpu/drm/xe/xe_guc_ct.c
1246
static bool retry_failure(struct xe_guc_ct *ct, int ret)
drivers/gpu/drm/xe/xe_guc_ct.c
1251
#define ct_alive(ct) \
drivers/gpu/drm/xe/xe_guc_ct.c
1252
(xe_guc_ct_enabled(ct) && !ct->ctbs.h2g.info.broken && \
drivers/gpu/drm/xe/xe_guc_ct.c
1253
!ct->ctbs.g2h.info.broken)
drivers/gpu/drm/xe/xe_guc_ct.c
1254
if (!wait_event_interruptible_timeout(ct->wq, ct_alive(ct), HZ * 5))
drivers/gpu/drm/xe/xe_guc_ct.c
1264
static int guc_ct_send_recv(struct xe_guc_ct *ct, const u32 *action, u32 len,
drivers/gpu/drm/xe/xe_guc_ct.c
1267
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
127
fence, ct->fast_req[slot].action);
drivers/gpu/drm/xe/xe_guc_ct.c
1283
ret = guc_ct_send(ct, action, len, 0, 0, &g2h_fence);
drivers/gpu/drm/xe/xe_guc_ct.c
1286
ret = xa_err(xa_store(&ct->fence_lookup, g2h_fence.seqno,
drivers/gpu/drm/xe/xe_guc_ct.c
1294
kick_reset(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1296
if (no_fail && retry_failure(ct, ret))
drivers/gpu/drm/xe/xe_guc_ct.c
1300
xa_erase(&ct->fence_lookup, g2h_fence.seqno);
drivers/gpu/drm/xe/xe_guc_ct.c
1308
ret = wait_event_timeout(ct->g2h_fence_wq, READ_ONCE(g2h_fence.done), HZ);
drivers/gpu/drm/xe/xe_guc_ct.c
131
static void fast_req_report(struct xe_guc_ct *ct, u16 fence)
drivers/gpu/drm/xe/xe_guc_ct.c
1310
LNL_FLUSH_WORK(&ct->g2h_worker);
drivers/gpu/drm/xe/xe_guc_ct.c
1324
mutex_lock(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1328
xa_erase(&ct->fence_lookup, g2h_fence.seqno);
drivers/gpu/drm/xe/xe_guc_ct.c
1329
mutex_unlock(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1336
mutex_unlock(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
134
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1360
mutex_unlock(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
137
lockdep_assert_held(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1383
int xe_guc_ct_send_recv(struct xe_guc_ct *ct, const u32 *action, u32 len,
drivers/gpu/drm/xe/xe_guc_ct.c
1386
KUNIT_STATIC_STUB_REDIRECT(xe_guc_ct_send_recv, ct, action, len, response_buffer);
drivers/gpu/drm/xe/xe_guc_ct.c
1387
return guc_ct_send_recv(ct, action, len, response_buffer, false);
drivers/gpu/drm/xe/xe_guc_ct.c
139
for (n = 0; n < ARRAY_SIZE(ct->fast_req); n++) {
drivers/gpu/drm/xe/xe_guc_ct.c
1391
int xe_guc_ct_send_recv_no_fail(struct xe_guc_ct *ct, const u32 *action,
drivers/gpu/drm/xe/xe_guc_ct.c
1394
return guc_ct_send_recv(ct, action, len, response_buffer, true);
drivers/gpu/drm/xe/xe_guc_ct.c
140
if (ct->fast_req[n].fence < fence_min)
drivers/gpu/drm/xe/xe_guc_ct.c
1407
static int parse_g2h_event(struct xe_guc_ct *ct, u32 *msg, u32 len)
drivers/gpu/drm/xe/xe_guc_ct.c
141
fence_min = ct->fast_req[n].fence;
drivers/gpu/drm/xe/xe_guc_ct.c
1412
lockdep_assert_held(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
142
if (ct->fast_req[n].fence > fence_max)
drivers/gpu/drm/xe/xe_guc_ct.c
1421
g2h_release_space(ct, len);
drivers/gpu/drm/xe/xe_guc_ct.c
1427
static int guc_crash_process_msg(struct xe_guc_ct *ct, u32 action)
drivers/gpu/drm/xe/xe_guc_ct.c
1429
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
143
fence_max = ct->fast_req[n].fence;
drivers/gpu/drm/xe/xe_guc_ct.c
1438
CT_DEAD(ct, NULL, CRASH);
drivers/gpu/drm/xe/xe_guc_ct.c
1440
kick_reset(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1445
static int parse_g2h_response(struct xe_guc_ct *ct, u32 *msg, u32 len)
drivers/gpu/drm/xe/xe_guc_ct.c
1447
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
145
if (ct->fast_req[n].fence != fence)
drivers/gpu/drm/xe/xe_guc_ct.c
1454
lockdep_assert_held(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1474
fast_req_report(ct, fence);
drivers/gpu/drm/xe/xe_guc_ct.c
148
return fast_req_dump(ct, fence, n);
drivers/gpu/drm/xe/xe_guc_ct.c
1480
CT_DEAD(ct, NULL, PARSE_G2H_RESPONSE);
drivers/gpu/drm/xe/xe_guc_ct.c
1485
g2h_fence = xa_erase(&ct->fence_lookup, fence);
drivers/gpu/drm/xe/xe_guc_ct.c
1490
g2h_release_space(ct, GUC_CTB_HXG_MSG_MAX_LEN);
drivers/gpu/drm/xe/xe_guc_ct.c
1510
g2h_release_space(ct, GUC_CTB_HXG_MSG_MAX_LEN);
drivers/gpu/drm/xe/xe_guc_ct.c
1516
wake_up_all(&ct->g2h_fence_wq);
drivers/gpu/drm/xe/xe_guc_ct.c
152
fence, fence_min, fence_max, ct->fence_seqno);
drivers/gpu/drm/xe/xe_guc_ct.c
1521
static int parse_g2h_msg(struct xe_guc_ct *ct, u32 *msg, u32 len)
drivers/gpu/drm/xe/xe_guc_ct.c
1523
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1528
lockdep_assert_held(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1534
CT_DEAD(ct, &ct->ctbs.g2h, PARSE_G2H_ORIGIN);
drivers/gpu/drm/xe/xe_guc_ct.c
1542
ret = parse_g2h_event(ct, msg, len);
drivers/gpu/drm/xe/xe_guc_ct.c
1547
ret = parse_g2h_response(ct, msg, len);
drivers/gpu/drm/xe/xe_guc_ct.c
155
static void fast_req_track(struct xe_guc_ct *ct, u16 fence, u16 action)
drivers/gpu/drm/xe/xe_guc_ct.c
1552
CT_DEAD(ct, &ct->ctbs.g2h, PARSE_G2H_TYPE);
drivers/gpu/drm/xe/xe_guc_ct.c
1560
static int process_g2h_msg(struct xe_guc_ct *ct, u32 *msg, u32 len)
drivers/gpu/drm/xe/xe_guc_ct.c
1562
struct xe_guc *guc = ct_to_guc(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1563
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
157
unsigned int slot = fence % ARRAY_SIZE(ct->fast_req);
drivers/gpu/drm/xe/xe_guc_ct.c
159
fast_req_stack_save(ct, slot);
drivers/gpu/drm/xe/xe_guc_ct.c
160
ct->fast_req[slot].fence = fence;
drivers/gpu/drm/xe/xe_guc_ct.c
161
ct->fast_req[slot].action = action;
drivers/gpu/drm/xe/xe_guc_ct.c
1633
ret = guc_crash_process_msg(ct, action);
drivers/gpu/drm/xe/xe_guc_ct.c
164
#define CT_DEAD(ct, ctb, reason_code) ct_dead_capture((ct), (ctb), CT_DEAD_##reason_code)
drivers/gpu/drm/xe/xe_guc_ct.c
1654
CT_DEAD(ct, NULL, PROCESS_FAILED);
drivers/gpu/drm/xe/xe_guc_ct.c
1660
static int g2h_read(struct xe_guc_ct *ct, u32 *msg, bool fast_path)
drivers/gpu/drm/xe/xe_guc_ct.c
1662
struct xe_device *xe = ct_to_xe(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1663
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1664
struct guc_ctb *g2h = &ct->ctbs.g2h;
drivers/gpu/drm/xe/xe_guc_ct.c
1670
xe_gt_assert(gt, xe_guc_ct_initialized(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
1671
lockdep_assert_held(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1673
if (ct->state == XE_GUC_CT_STATE_DISABLED)
drivers/gpu/drm/xe/xe_guc_ct.c
1676
if (ct->state == XE_GUC_CT_STATE_STOPPED)
drivers/gpu/drm/xe/xe_guc_ct.c
168
static void ct_dead_fini(struct xe_guc_ct *ct) { }
drivers/gpu/drm/xe/xe_guc_ct.c
1682
xe_gt_assert(gt, xe_guc_ct_enabled(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
169
static void ct_dead_init(struct xe_guc_ct *ct) { }
drivers/gpu/drm/xe/xe_guc_ct.c
171
static void fast_req_report(struct xe_guc_ct *ct, u16 fence) { }
drivers/gpu/drm/xe/xe_guc_ct.c
172
static void fast_req_track(struct xe_guc_ct *ct, u16 fence, u16 action) { }
drivers/gpu/drm/xe/xe_guc_ct.c
174
#define CT_DEAD(ct, ctb, reason) \
drivers/gpu/drm/xe/xe_guc_ct.c
1800
trace_xe_guc_ctb_g2h(xe, ct_to_gt(ct)->info.id,
drivers/gpu/drm/xe/xe_guc_ct.c
1806
CT_DEAD(ct, &ct->ctbs.g2h, G2H_READ);
drivers/gpu/drm/xe/xe_guc_ct.c
1810
static void g2h_fast_path(struct xe_guc_ct *ct, u32 *msg, u32 len)
drivers/gpu/drm/xe/xe_guc_ct.c
1812
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1813
struct xe_guc *guc = ct_to_guc(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1832
__g2h_release_space(ct, len);
drivers/gpu/drm/xe/xe_guc_ct.c
1842
CT_DEAD(ct, NULL, FAST_G2H);
drivers/gpu/drm/xe/xe_guc_ct.c
1854
void xe_guc_ct_fast_path(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
1856
struct xe_device *xe = ct_to_xe(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1860
ongoing = xe_pm_runtime_get_if_active(ct_to_xe(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
1861
if (!ongoing && xe_pm_read_callback_task(ct_to_xe(ct)) == NULL)
drivers/gpu/drm/xe/xe_guc_ct.c
1864
spin_lock(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1866
len = g2h_read(ct, ct->fast_msg, true);
drivers/gpu/drm/xe/xe_guc_ct.c
1868
g2h_fast_path(ct, ct->fast_msg, len);
drivers/gpu/drm/xe/xe_guc_ct.c
1870
spin_unlock(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1877
static int dequeue_one_g2h(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
1882
lockdep_assert_held(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1884
spin_lock_irq(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1885
len = g2h_read(ct, ct->msg, false);
drivers/gpu/drm/xe/xe_guc_ct.c
1886
spin_unlock_irq(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1890
ret = parse_g2h_msg(ct, ct->msg, len);
drivers/gpu/drm/xe/xe_guc_ct.c
1894
ret = process_g2h_msg(ct, ct->msg, len);
drivers/gpu/drm/xe/xe_guc_ct.c
1901
static void receive_g2h(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
1929
ongoing = xe_pm_runtime_get_if_active(ct_to_xe(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
1930
if (!ongoing && xe_pm_read_callback_task(ct_to_xe(ct)) == NULL)
drivers/gpu/drm/xe/xe_guc_ct.c
1934
mutex_lock(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1935
ret = dequeue_one_g2h(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1936
mutex_unlock(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
1939
xe_gt_err(ct_to_gt(ct), "CT dequeue failed: %d", ret);
drivers/gpu/drm/xe/xe_guc_ct.c
1940
CT_DEAD(ct, NULL, G2H_RECV);
drivers/gpu/drm/xe/xe_guc_ct.c
1941
kick_reset(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1946
xe_pm_runtime_put(ct_to_xe(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
1951
struct xe_guc_ct *ct = container_of(w, struct xe_guc_ct, g2h_worker);
drivers/gpu/drm/xe/xe_guc_ct.c
1953
receive_g2h(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
1956
static struct xe_guc_ct_snapshot *guc_ct_snapshot_alloc(struct xe_guc_ct *ct, bool atomic,
drivers/gpu/drm/xe/xe_guc_ct.c
1965
if (ct->bo && want_ctb) {
drivers/gpu/drm/xe/xe_guc_ct.c
1966
snapshot->ctb_size = xe_bo_size(ct->bo);
drivers/gpu/drm/xe/xe_guc_ct.c
1995
static struct xe_guc_ct_snapshot *guc_ct_snapshot_capture(struct xe_guc_ct *ct, bool atomic,
drivers/gpu/drm/xe/xe_guc_ct.c
1998
struct xe_device *xe = ct_to_xe(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
2001
snapshot = guc_ct_snapshot_alloc(ct, atomic, want_ctb);
drivers/gpu/drm/xe/xe_guc_ct.c
2003
xe_gt_err(ct_to_gt(ct), "Skipping CTB snapshot entirely.\n");
drivers/gpu/drm/xe/xe_guc_ct.c
2007
if (xe_guc_ct_enabled(ct) || ct->state == XE_GUC_CT_STATE_STOPPED) {
drivers/gpu/drm/xe/xe_guc_ct.c
2009
snapshot->g2h_outstanding = READ_ONCE(ct->g2h_outstanding);
drivers/gpu/drm/xe/xe_guc_ct.c
2010
guc_ctb_snapshot_capture(xe, &ct->ctbs.h2g, &snapshot->h2g);
drivers/gpu/drm/xe/xe_guc_ct.c
2011
guc_ctb_snapshot_capture(xe, &ct->ctbs.g2h, &snapshot->g2h);
drivers/gpu/drm/xe/xe_guc_ct.c
2014
if (ct->bo && snapshot->ctb)
drivers/gpu/drm/xe/xe_guc_ct.c
2015
xe_map_memcpy_from(xe, snapshot->ctb, &ct->bo->vmap, 0, snapshot->ctb_size);
drivers/gpu/drm/xe/xe_guc_ct.c
2030
struct xe_guc_ct_snapshot *xe_guc_ct_snapshot_capture(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
2032
return guc_ct_snapshot_capture(ct, true, true);
drivers/gpu/drm/xe/xe_guc_ct.c
2092
void xe_guc_ct_print(struct xe_guc_ct *ct, struct drm_printer *p, bool want_ctb)
drivers/gpu/drm/xe/xe_guc_ct.c
2096
snapshot = guc_ct_snapshot_capture(ct, false, want_ctb);
drivers/gpu/drm/xe/xe_guc_ct.c
2120
static void ct_dead_capture(struct xe_guc_ct *ct, struct guc_ctb *ctb, u32 reason_code)
drivers/gpu/drm/xe/xe_guc_ct.c
2124
struct xe_guc *guc = ct_to_guc(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
2138
if (ct->dead.reported)
drivers/gpu/drm/xe/xe_guc_ct.c
2141
spin_lock_irqsave(&ct->dead.lock, flags);
drivers/gpu/drm/xe/xe_guc_ct.c
2144
have_capture = ct->dead.reason & (1 << CT_DEAD_STATE_CAPTURE);
drivers/gpu/drm/xe/xe_guc_ct.c
2145
ct->dead.reason |= (1 << reason_code) |
drivers/gpu/drm/xe/xe_guc_ct.c
2148
spin_unlock_irqrestore(&ct->dead.lock, flags);
drivers/gpu/drm/xe/xe_guc_ct.c
2154
snapshot_ct = xe_guc_ct_snapshot_capture((ct));
drivers/gpu/drm/xe/xe_guc_ct.c
2156
spin_lock_irqsave(&ct->dead.lock, flags);
drivers/gpu/drm/xe/xe_guc_ct.c
2158
if (ct->dead.snapshot_log || ct->dead.snapshot_ct) {
drivers/gpu/drm/xe/xe_guc_ct.c
2159
xe_gt_err(ct_to_gt(ct), "Got unexpected dead CT capture!\n");
drivers/gpu/drm/xe/xe_guc_ct.c
2163
ct->dead.snapshot_log = snapshot_log;
drivers/gpu/drm/xe/xe_guc_ct.c
2164
ct->dead.snapshot_ct = snapshot_ct;
drivers/gpu/drm/xe/xe_guc_ct.c
2167
spin_unlock_irqrestore(&ct->dead.lock, flags);
drivers/gpu/drm/xe/xe_guc_ct.c
2169
queue_work(system_unbound_wq, &(ct)->dead.worker);
drivers/gpu/drm/xe/xe_guc_ct.c
2174
struct xe_guc_ct *ct = container_of(dead, struct xe_guc_ct, dead);
drivers/gpu/drm/xe/xe_guc_ct.c
2175
struct xe_device *xe = ct_to_xe(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
2176
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
2205
struct xe_guc_ct *ct = container_of(w, struct xe_guc_ct, dead.worker);
drivers/gpu/drm/xe/xe_guc_ct.c
2207
if (!ct->dead.reported) {
drivers/gpu/drm/xe/xe_guc_ct.c
2208
ct->dead.reported = true;
drivers/gpu/drm/xe/xe_guc_ct.c
2209
ct_dead_print(&ct->dead);
drivers/gpu/drm/xe/xe_guc_ct.c
2212
spin_lock_irq(&ct->dead.lock);
drivers/gpu/drm/xe/xe_guc_ct.c
2214
xe_guc_log_snapshot_free(ct->dead.snapshot_log);
drivers/gpu/drm/xe/xe_guc_ct.c
2215
ct->dead.snapshot_log = NULL;
drivers/gpu/drm/xe/xe_guc_ct.c
2216
xe_guc_ct_snapshot_free(ct->dead.snapshot_ct);
drivers/gpu/drm/xe/xe_guc_ct.c
2217
ct->dead.snapshot_ct = NULL;
drivers/gpu/drm/xe/xe_guc_ct.c
2219
if (ct->dead.reason & (1 << CT_DEAD_STATE_REARM)) {
drivers/gpu/drm/xe/xe_guc_ct.c
2221
ct->dead.reason = 0;
drivers/gpu/drm/xe/xe_guc_ct.c
2222
ct->dead.reported = false;
drivers/gpu/drm/xe/xe_guc_ct.c
2225
spin_unlock_irq(&ct->dead.lock);
drivers/gpu/drm/xe/xe_guc_ct.c
275
long xe_guc_ct_queue_proc_time_jiffies(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
289
struct xe_guc_ct *ct = arg;
drivers/gpu/drm/xe/xe_guc_ct.c
291
ct_dead_fini(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
292
ct_exit_safe_mode(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
293
destroy_workqueue(ct->g2h_wq);
drivers/gpu/drm/xe/xe_guc_ct.c
294
xa_destroy(&ct->fence_lookup);
drivers/gpu/drm/xe/xe_guc_ct.c
297
static void primelockdep(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
303
might_lock(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
307
int xe_guc_ct_init_noalloc(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
309
struct xe_device *xe = ct_to_xe(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
310
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
315
err = drmm_mutex_init(&xe->drm, &ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
319
primelockdep(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
321
ct->g2h_wq = alloc_ordered_workqueue("xe-g2h-wq", WQ_MEM_RECLAIM);
drivers/gpu/drm/xe/xe_guc_ct.c
322
if (!ct->g2h_wq)
drivers/gpu/drm/xe/xe_guc_ct.c
325
spin_lock_init(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
326
xa_init(&ct->fence_lookup);
drivers/gpu/drm/xe/xe_guc_ct.c
327
INIT_WORK(&ct->g2h_worker, g2h_worker_func);
drivers/gpu/drm/xe/xe_guc_ct.c
328
INIT_DELAYED_WORK(&ct->safe_mode_worker, safe_mode_worker_func);
drivers/gpu/drm/xe/xe_guc_ct.c
330
ct_dead_init(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
331
init_waitqueue_head(&ct->wq);
drivers/gpu/drm/xe/xe_guc_ct.c
332
init_waitqueue_head(&ct->g2h_fence_wq);
drivers/gpu/drm/xe/xe_guc_ct.c
334
err = drmm_add_action_or_reset(&xe->drm, guc_ct_fini, ct);
drivers/gpu/drm/xe/xe_guc_ct.c
338
xe_gt_assert(gt, ct->state == XE_GUC_CT_STATE_NOT_INITIALIZED);
drivers/gpu/drm/xe/xe_guc_ct.c
339
ct->state = XE_GUC_CT_STATE_DISABLED;
drivers/gpu/drm/xe/xe_guc_ct.c
346
struct xe_guc_ct *ct = arg;
drivers/gpu/drm/xe/xe_guc_ct.c
348
xe_guc_ct_stop(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
349
guc_ct_change_state(ct, XE_GUC_CT_STATE_DISABLED);
drivers/gpu/drm/xe/xe_guc_ct.c
352
int xe_guc_ct_init(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
354
struct xe_device *xe = ct_to_xe(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
355
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
367
ct->bo = bo;
drivers/gpu/drm/xe/xe_guc_ct.c
369
return devm_add_action_or_reset(xe->drm.dev, guc_action_disable_ct, ct);
drivers/gpu/drm/xe/xe_guc_ct.c
38
static void receive_g2h(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.c
382
int xe_guc_ct_init_post_hwconfig(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
384
struct xe_device *xe = ct_to_xe(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
385
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
389
xe_assert(xe, !xe_guc_ct_enabled(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
392
ret = xe_managed_bo_reinit_in_vram(xe, tile, &ct->bo);
drivers/gpu/drm/xe/xe_guc_ct.c
397
devm_remove_action(xe->drm.dev, guc_action_disable_ct, ct);
drivers/gpu/drm/xe/xe_guc_ct.c
398
return devm_add_action_or_reset(xe->drm.dev, guc_action_disable_ct, ct);
drivers/gpu/drm/xe/xe_guc_ct.c
41
static void ct_exit_safe_mode(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.c
42
static void guc_ct_change_state(struct xe_guc_ct *ct,
drivers/gpu/drm/xe/xe_guc_ct.c
446
static int guc_ct_ctb_h2g_register(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
448
struct xe_guc *guc = ct_to_guc(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
45
static struct xe_guc *ct_to_guc(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
452
desc_addr = xe_bo_ggtt_addr(ct->bo);
drivers/gpu/drm/xe/xe_guc_ct.c
453
ctb_addr = xe_bo_ggtt_addr(ct->bo) + CTB_H2G_BUFFER_OFFSET;
drivers/gpu/drm/xe/xe_guc_ct.c
454
size = ct->ctbs.h2g.info.size * sizeof(u32);
drivers/gpu/drm/xe/xe_guc_ct.c
47
return container_of(ct, struct xe_guc, ct);
drivers/gpu/drm/xe/xe_guc_ct.c
473
static int guc_ct_ctb_g2h_register(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
475
struct xe_guc *guc = ct_to_guc(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
479
desc_addr = xe_bo_ggtt_addr(ct->bo) + CTB_DESC_SIZE;
drivers/gpu/drm/xe/xe_guc_ct.c
480
ctb_addr = xe_bo_ggtt_addr(ct->bo) + CTB_H2G_BUFFER_OFFSET +
drivers/gpu/drm/xe/xe_guc_ct.c
482
size = ct->ctbs.g2h.info.size * sizeof(u32);
drivers/gpu/drm/xe/xe_guc_ct.c
50
static struct xe_gt *ct_to_gt(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
501
static int guc_ct_control_toggle(struct xe_guc_ct *ct, bool enable)
drivers/gpu/drm/xe/xe_guc_ct.c
512
int ret = xe_guc_mmio_send(ct_to_guc(ct), request, ARRAY_SIZE(request));
drivers/gpu/drm/xe/xe_guc_ct.c
517
static void guc_ct_change_state(struct xe_guc_ct *ct,
drivers/gpu/drm/xe/xe_guc_ct.c
52
return container_of(ct, struct xe_gt, uc.guc.ct);
drivers/gpu/drm/xe/xe_guc_ct.c
520
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
524
mutex_lock(&ct->lock); /* Serialise dequeue_one_g2h() */
drivers/gpu/drm/xe/xe_guc_ct.c
525
spin_lock_irq(&ct->fast_lock); /* Serialise CT fast-path */
drivers/gpu/drm/xe/xe_guc_ct.c
527
xe_gt_assert(ct_to_gt(ct), ct->g2h_outstanding == 0 ||
drivers/gpu/drm/xe/xe_guc_ct.c
530
if (ct->g2h_outstanding)
drivers/gpu/drm/xe/xe_guc_ct.c
531
xe_pm_runtime_put(ct_to_xe(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
532
ct->g2h_outstanding = 0;
drivers/gpu/drm/xe/xe_guc_ct.c
538
WRITE_ONCE(ct->state, state);
drivers/gpu/drm/xe/xe_guc_ct.c
544
spin_unlock_irq(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
547
xa_for_each(&ct->fence_lookup, idx, g2h_fence)
drivers/gpu/drm/xe/xe_guc_ct.c
55
static struct xe_device *ct_to_xe(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
552
wake_up_all(&ct->g2h_fence_wq);
drivers/gpu/drm/xe/xe_guc_ct.c
558
xa_destroy(&ct->fence_lookup);
drivers/gpu/drm/xe/xe_guc_ct.c
560
mutex_unlock(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
563
static bool ct_needs_safe_mode(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
565
return !pci_dev_msi_enabled(to_pci_dev(ct_to_xe(ct)->drm.dev));
drivers/gpu/drm/xe/xe_guc_ct.c
568
static bool ct_restart_safe_mode_worker(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
57
return gt_to_xe(ct_to_gt(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
570
if (!ct_needs_safe_mode(ct))
drivers/gpu/drm/xe/xe_guc_ct.c
573
queue_delayed_work(ct->g2h_wq, &ct->safe_mode_worker, HZ / 10);
drivers/gpu/drm/xe/xe_guc_ct.c
579
struct xe_guc_ct *ct = container_of(w, struct xe_guc_ct, safe_mode_worker.work);
drivers/gpu/drm/xe/xe_guc_ct.c
581
receive_g2h(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
583
if (!ct_restart_safe_mode_worker(ct))
drivers/gpu/drm/xe/xe_guc_ct.c
584
xe_gt_dbg(ct_to_gt(ct), "GuC CT safe-mode canceled\n");
drivers/gpu/drm/xe/xe_guc_ct.c
587
static void ct_enter_safe_mode(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
589
if (ct_restart_safe_mode_worker(ct))
drivers/gpu/drm/xe/xe_guc_ct.c
590
xe_gt_dbg(ct_to_gt(ct), "GuC CT safe-mode enabled\n");
drivers/gpu/drm/xe/xe_guc_ct.c
593
static void ct_exit_safe_mode(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
595
if (cancel_delayed_work_sync(&ct->safe_mode_worker))
drivers/gpu/drm/xe/xe_guc_ct.c
596
xe_gt_dbg(ct_to_gt(ct), "GuC CT safe-mode disabled\n");
drivers/gpu/drm/xe/xe_guc_ct.c
599
static int __xe_guc_ct_start(struct xe_guc_ct *ct, bool needs_register)
drivers/gpu/drm/xe/xe_guc_ct.c
601
struct xe_device *xe = ct_to_xe(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
602
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
605
xe_gt_assert(gt, !xe_guc_ct_enabled(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
608
xe_map_memset(xe, &ct->bo->vmap, 0, 0, xe_bo_size(ct->bo));
drivers/gpu/drm/xe/xe_guc_ct.c
609
guc_ct_ctb_h2g_init(xe, &ct->ctbs.h2g, &ct->bo->vmap);
drivers/gpu/drm/xe/xe_guc_ct.c
610
guc_ct_ctb_g2h_init(xe, &ct->ctbs.g2h, &ct->bo->vmap);
drivers/gpu/drm/xe/xe_guc_ct.c
612
err = guc_ct_ctb_h2g_register(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
616
err = guc_ct_ctb_g2h_register(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
620
err = guc_ct_control_toggle(ct, true);
drivers/gpu/drm/xe/xe_guc_ct.c
624
ct->ctbs.h2g.info.broken = false;
drivers/gpu/drm/xe/xe_guc_ct.c
625
ct->ctbs.g2h.info.broken = false;
drivers/gpu/drm/xe/xe_guc_ct.c
627
xe_map_memset(xe, &ct->bo->vmap, CTB_H2G_BUFFER_OFFSET, 0,
drivers/gpu/drm/xe/xe_guc_ct.c
631
guc_ct_change_state(ct, XE_GUC_CT_STATE_ENABLED);
drivers/gpu/drm/xe/xe_guc_ct.c
634
wake_up_all(&ct->wq);
drivers/gpu/drm/xe/xe_guc_ct.c
636
if (ct_needs_safe_mode(ct))
drivers/gpu/drm/xe/xe_guc_ct.c
637
ct_enter_safe_mode(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
644
spin_lock_irq(&ct->dead.lock);
drivers/gpu/drm/xe/xe_guc_ct.c
645
if (ct->dead.reason) {
drivers/gpu/drm/xe/xe_guc_ct.c
646
ct->dead.reason |= (1 << CT_DEAD_STATE_REARM);
drivers/gpu/drm/xe/xe_guc_ct.c
647
queue_work(system_unbound_wq, &ct->dead.worker);
drivers/gpu/drm/xe/xe_guc_ct.c
649
spin_unlock_irq(&ct->dead.lock);
drivers/gpu/drm/xe/xe_guc_ct.c
656
CT_DEAD(ct, NULL, SETUP);
drivers/gpu/drm/xe/xe_guc_ct.c
669
int xe_guc_ct_restart(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
671
return __xe_guc_ct_start(ct, false);
drivers/gpu/drm/xe/xe_guc_ct.c
682
int xe_guc_ct_enable(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
684
return __xe_guc_ct_start(ct, true);
drivers/gpu/drm/xe/xe_guc_ct.c
687
static void stop_g2h_handler(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
689
cancel_work_sync(&ct->g2h_worker);
drivers/gpu/drm/xe/xe_guc_ct.c
699
void xe_guc_ct_disable(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
701
guc_ct_change_state(ct, XE_GUC_CT_STATE_DISABLED);
drivers/gpu/drm/xe/xe_guc_ct.c
702
ct_exit_safe_mode(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
703
stop_g2h_handler(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
710
void xe_guc_ct_flush_and_stop(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
712
receive_g2h(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
713
xe_guc_ct_stop(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
722
void xe_guc_ct_stop(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
724
if (!xe_guc_ct_initialized(ct))
drivers/gpu/drm/xe/xe_guc_ct.c
727
guc_ct_change_state(ct, XE_GUC_CT_STATE_STOPPED);
drivers/gpu/drm/xe/xe_guc_ct.c
728
stop_g2h_handler(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
737
void xe_guc_ct_runtime_suspend(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
739
struct guc_ctb *g2h = &ct->ctbs.g2h;
drivers/gpu/drm/xe/xe_guc_ct.c
743
xe_gt_assert(ct_to_gt(ct), g2h->info.space == credits);
drivers/gpu/drm/xe/xe_guc_ct.c
750
xe_guc_ct_disable(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
759
void xe_guc_ct_runtime_resume(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
761
xe_guc_ct_restart(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
764
static bool h2g_has_room(struct xe_guc_ct *ct, u32 cmd_len)
drivers/gpu/drm/xe/xe_guc_ct.c
766
struct guc_ctb *h2g = &ct->ctbs.h2g;
drivers/gpu/drm/xe/xe_guc_ct.c
768
lockdep_assert_held(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
771
h2g->info.head = desc_read(ct_to_xe(ct), h2g, head);
drivers/gpu/drm/xe/xe_guc_ct.c
774
struct xe_device *xe = ct_to_xe(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
779
xe_gt_err(ct_to_gt(ct), "CT: invalid head offset %u >= %u)\n",
drivers/gpu/drm/xe/xe_guc_ct.c
781
CT_DEAD(ct, h2g, H2G_HAS_ROOM);
drivers/gpu/drm/xe/xe_guc_ct.c
795
static bool g2h_has_room(struct xe_guc_ct *ct, u32 g2h_len)
drivers/gpu/drm/xe/xe_guc_ct.c
800
lockdep_assert_held(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
802
return ct->ctbs.g2h.info.space > g2h_len;
drivers/gpu/drm/xe/xe_guc_ct.c
805
static int has_room(struct xe_guc_ct *ct, u32 cmd_len, u32 g2h_len)
drivers/gpu/drm/xe/xe_guc_ct.c
807
lockdep_assert_held(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
809
if (!g2h_has_room(ct, g2h_len) || !h2g_has_room(ct, cmd_len))
drivers/gpu/drm/xe/xe_guc_ct.c
815
static void h2g_reserve_space(struct xe_guc_ct *ct, u32 cmd_len)
drivers/gpu/drm/xe/xe_guc_ct.c
817
lockdep_assert_held(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
818
ct->ctbs.h2g.info.space -= cmd_len;
drivers/gpu/drm/xe/xe_guc_ct.c
821
static void __g2h_reserve_space(struct xe_guc_ct *ct, u32 g2h_len, u32 num_g2h)
drivers/gpu/drm/xe/xe_guc_ct.c
823
xe_gt_assert(ct_to_gt(ct), g2h_len <= ct->ctbs.g2h.info.space);
drivers/gpu/drm/xe/xe_guc_ct.c
824
xe_gt_assert(ct_to_gt(ct), (!g2h_len && !num_g2h) ||
drivers/gpu/drm/xe/xe_guc_ct.c
828
lockdep_assert_held(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
830
if (!ct->g2h_outstanding)
drivers/gpu/drm/xe/xe_guc_ct.c
831
xe_pm_runtime_get_noresume(ct_to_xe(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
833
ct->ctbs.g2h.info.space -= g2h_len;
drivers/gpu/drm/xe/xe_guc_ct.c
834
ct->g2h_outstanding += num_g2h;
drivers/gpu/drm/xe/xe_guc_ct.c
838
static void __g2h_release_space(struct xe_guc_ct *ct, u32 g2h_len)
drivers/gpu/drm/xe/xe_guc_ct.c
84
static void ct_dead_capture(struct xe_guc_ct *ct, struct guc_ctb *ctb, u32 reason_code);
drivers/gpu/drm/xe/xe_guc_ct.c
842
lockdep_assert_held(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
844
bad = ct->ctbs.g2h.info.space + g2h_len >
drivers/gpu/drm/xe/xe_guc_ct.c
845
ct->ctbs.g2h.info.size - ct->ctbs.g2h.info.resv_space;
drivers/gpu/drm/xe/xe_guc_ct.c
846
bad |= !ct->g2h_outstanding;
drivers/gpu/drm/xe/xe_guc_ct.c
849
xe_gt_err(ct_to_gt(ct), "Invalid G2H release: %d + %d vs %d - %d -> %d vs %d, outstanding = %d!\n",
drivers/gpu/drm/xe/xe_guc_ct.c
850
ct->ctbs.g2h.info.space, g2h_len,
drivers/gpu/drm/xe/xe_guc_ct.c
851
ct->ctbs.g2h.info.size, ct->ctbs.g2h.info.resv_space,
drivers/gpu/drm/xe/xe_guc_ct.c
852
ct->ctbs.g2h.info.space + g2h_len,
drivers/gpu/drm/xe/xe_guc_ct.c
853
ct->ctbs.g2h.info.size - ct->ctbs.g2h.info.resv_space,
drivers/gpu/drm/xe/xe_guc_ct.c
854
ct->g2h_outstanding);
drivers/gpu/drm/xe/xe_guc_ct.c
855
CT_DEAD(ct, &ct->ctbs.g2h, G2H_RELEASE);
drivers/gpu/drm/xe/xe_guc_ct.c
859
ct->ctbs.g2h.info.space += g2h_len;
drivers/gpu/drm/xe/xe_guc_ct.c
86
static void ct_dead_fini(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
860
if (!--ct->g2h_outstanding)
drivers/gpu/drm/xe/xe_guc_ct.c
861
xe_pm_runtime_put(ct_to_xe(ct));
drivers/gpu/drm/xe/xe_guc_ct.c
864
static void g2h_release_space(struct xe_guc_ct *ct, u32 g2h_len)
drivers/gpu/drm/xe/xe_guc_ct.c
866
spin_lock_irq(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
867
__g2h_release_space(ct, g2h_len);
drivers/gpu/drm/xe/xe_guc_ct.c
868
spin_unlock_irq(&ct->fast_lock);
drivers/gpu/drm/xe/xe_guc_ct.c
88
cancel_work_sync(&ct->dead.worker);
drivers/gpu/drm/xe/xe_guc_ct.c
880
static u16 next_ct_seqno(struct xe_guc_ct *ct, bool is_g2h_fence)
drivers/gpu/drm/xe/xe_guc_ct.c
882
u32 seqno = ct->fence_seqno++ & CT_SEQNO_MASK;
drivers/gpu/drm/xe/xe_guc_ct.c
91
static void ct_dead_init(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.c
914
static int h2g_write(struct xe_guc_ct *ct, const u32 *action, u32 len,
drivers/gpu/drm/xe/xe_guc_ct.c
917
struct xe_device *xe = ct_to_xe(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
918
struct xe_gt *gt = ct_to_gt(ct);
drivers/gpu/drm/xe/xe_guc_ct.c
919
struct guc_ctb *h2g = &ct->ctbs.h2g;
drivers/gpu/drm/xe/xe_guc_ct.c
929
lockdep_assert_held(&ct->lock);
drivers/gpu/drm/xe/xe_guc_ct.c
93
spin_lock_init(&ct->dead.lock);
drivers/gpu/drm/xe/xe_guc_ct.c
94
INIT_WORK(&ct->dead.worker, ct_dead_worker_func);
drivers/gpu/drm/xe/xe_guc_ct.c
967
h2g_reserve_space(ct, (h2g->info.size - tail));
drivers/gpu/drm/xe/xe_guc_ct.c
987
fast_req_track(ct, ct_fence_value,
drivers/gpu/drm/xe/xe_guc_ct.h
14
int xe_guc_ct_init_noalloc(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
15
int xe_guc_ct_init(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
16
int xe_guc_ct_init_post_hwconfig(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
17
int xe_guc_ct_enable(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
18
int xe_guc_ct_restart(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
19
void xe_guc_ct_disable(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
20
void xe_guc_ct_runtime_resume(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
21
void xe_guc_ct_runtime_suspend(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
22
void xe_guc_ct_stop(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
23
void xe_guc_ct_flush_and_stop(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
24
void xe_guc_ct_fast_path(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
26
struct xe_guc_ct_snapshot *xe_guc_ct_snapshot_capture(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
29
void xe_guc_ct_print(struct xe_guc_ct *ct, struct drm_printer *p, bool want_ctb);
drivers/gpu/drm/xe/xe_guc_ct.h
31
static inline bool xe_guc_ct_initialized(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.h
34
return READ_ONCE(ct->state) != XE_GUC_CT_STATE_NOT_INITIALIZED;
drivers/gpu/drm/xe/xe_guc_ct.h
37
static inline bool xe_guc_ct_enabled(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.h
40
return READ_ONCE(ct->state) == XE_GUC_CT_STATE_ENABLED;
drivers/gpu/drm/xe/xe_guc_ct.h
43
static inline void xe_guc_ct_irq_handler(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.h
45
if (!xe_guc_ct_enabled(ct))
drivers/gpu/drm/xe/xe_guc_ct.h
48
wake_up_all(&ct->wq);
drivers/gpu/drm/xe/xe_guc_ct.h
49
queue_work(ct->g2h_wq, &ct->g2h_worker);
drivers/gpu/drm/xe/xe_guc_ct.h
50
xe_guc_ct_fast_path(ct);
drivers/gpu/drm/xe/xe_guc_ct.h
54
int xe_guc_ct_send(struct xe_guc_ct *ct, const u32 *action, u32 len,
drivers/gpu/drm/xe/xe_guc_ct.h
56
int xe_guc_ct_send_locked(struct xe_guc_ct *ct, const u32 *action, u32 len,
drivers/gpu/drm/xe/xe_guc_ct.h
58
int xe_guc_ct_send_recv(struct xe_guc_ct *ct, const u32 *action, u32 len,
drivers/gpu/drm/xe/xe_guc_ct.h
61
xe_guc_ct_send_block(struct xe_guc_ct *ct, const u32 *action, u32 len)
drivers/gpu/drm/xe/xe_guc_ct.h
63
return xe_guc_ct_send_recv(ct, action, len, NULL);
drivers/gpu/drm/xe/xe_guc_ct.h
67
int xe_guc_ct_send_g2h_handler(struct xe_guc_ct *ct, const u32 *action,
drivers/gpu/drm/xe/xe_guc_ct.h
71
int xe_guc_ct_send_recv_no_fail(struct xe_guc_ct *ct, const u32 *action,
drivers/gpu/drm/xe/xe_guc_ct.h
74
xe_guc_ct_send_block_no_fail(struct xe_guc_ct *ct, const u32 *action, u32 len)
drivers/gpu/drm/xe/xe_guc_ct.h
76
return xe_guc_ct_send_recv_no_fail(ct, action, len, NULL);
drivers/gpu/drm/xe/xe_guc_ct.h
79
long xe_guc_ct_queue_proc_time_jiffies(struct xe_guc_ct *ct);
drivers/gpu/drm/xe/xe_guc_ct.h
85
static inline void xe_guc_ct_wake_waiters(struct xe_guc_ct *ct)
drivers/gpu/drm/xe/xe_guc_ct.h
87
wake_up_all(&ct->wq);
drivers/gpu/drm/xe/xe_guc_debugfs.c
97
xe_guc_ct_print(&guc->ct, p, true);
drivers/gpu/drm/xe/xe_guc_engine_activity.c
274
return xe_guc_ct_send_block(&guc->ct, action, ARRAY_SIZE(action));
drivers/gpu/drm/xe/xe_guc_engine_activity.c
299
return xe_guc_ct_send_block(&guc->ct, action, ARRAY_SIZE(action));
drivers/gpu/drm/xe/xe_guc_pagefault.c
36
xe_guc_ct_send(&guc->ct, action, ARRAY_SIZE(action), 0, 0);
drivers/gpu/drm/xe/xe_guc_pc.c
104
return &pc_to_guc(pc)->ct;
drivers/gpu/drm/xe/xe_guc_pc.c
170
struct xe_guc_ct *ct = pc_to_ct(pc);
drivers/gpu/drm/xe/xe_guc_pc.c
179
ret = xe_guc_ct_send(ct, action, ARRAY_SIZE(action), 0, 0);
drivers/gpu/drm/xe/xe_guc_pc.c
189
struct xe_guc_ct *ct = pc_to_ct(pc);
drivers/gpu/drm/xe/xe_guc_pc.c
203
ret = xe_guc_ct_send_block(ct, action, ARRAY_SIZE(action));
drivers/gpu/drm/xe/xe_guc_pc.c
213
struct xe_guc_ct *ct = pc_to_ct(pc);
drivers/gpu/drm/xe/xe_guc_pc.c
226
ret = xe_guc_ct_send(ct, action, ARRAY_SIZE(action), 0, 0);
drivers/gpu/drm/xe/xe_guc_pc.c
241
struct xe_guc_ct *ct = &pc_to_guc(pc)->ct;
drivers/gpu/drm/xe/xe_guc_pc.c
248
ret = xe_guc_ct_send(ct, action, ARRAY_SIZE(action), 0, 0);
drivers/gpu/drm/xe/xe_guc_pc.c
258
struct xe_guc_ct *ct = pc_to_ct(pc);
drivers/gpu/drm/xe/xe_guc_pc.c
265
ret = xe_guc_ct_send(ct, action, ARRAY_SIZE(action), 0, 0);
drivers/gpu/drm/xe/xe_guc_relay.c
45
return &relay_to_guc(relay)->ct;
drivers/gpu/drm/xe/xe_guc_submit.c
1145
xe_guc_ct_send(&guc->ct, action, len, g2h_len, num_g2h);
drivers/gpu/drm/xe/xe_guc_submit.c
1153
xe_guc_ct_send(&guc->ct, action, len, 0, 0);
drivers/gpu/drm/xe/xe_guc_submit.c
1232
ret = wait_event_timeout(guc->ct.wq,
drivers/gpu/drm/xe/xe_guc_submit.c
1260
xe_guc_ct_send(&guc->ct, action, ARRAY_SIZE(action),
drivers/gpu/drm/xe/xe_guc_submit.c
1403
xe_guc_ct_send(&guc->ct, action, ARRAY_SIZE(action),
drivers/gpu/drm/xe/xe_guc_submit.c
1406
ret = wait_event_timeout(guc->ct.wq,
drivers/gpu/drm/xe/xe_guc_submit.c
1436
xe_guc_ct_send(&guc->ct, action, ARRAY_SIZE(action),
drivers/gpu/drm/xe/xe_guc_submit.c
1527
ret = wait_event_timeout(guc->ct.wq,
drivers/gpu/drm/xe/xe_guc_submit.c
1549
ret = wait_event_timeout(guc->ct.wq,
drivers/gpu/drm/xe/xe_guc_submit.c
1757
wake_up_all(&guc->ct.wq);
drivers/gpu/drm/xe/xe_guc_submit.c
1781
wait_event(guc->ct.wq, vf_recovery(guc) ||
drivers/gpu/drm/xe/xe_guc_submit.c
1823
xe_guc_ct_send(&guc->ct, action, ARRAY_SIZE(action), 0, 0);
drivers/gpu/drm/xe/xe_guc_submit.c
2189
ret = wait_event_interruptible_timeout(guc->ct.wq, WAIT_COND ||
drivers/gpu/drm/xe/xe_guc_submit.c
2323
wake_up_all(&guc->ct.wq);
drivers/gpu/drm/xe/xe_guc_submit.c
2341
wait_event(guc->ct.wq, xe_device_wedged(guc_to_xe(guc)) ||
drivers/gpu/drm/xe/xe_guc_submit.c
2571
wake_up_all(&guc->ct.wq);
drivers/gpu/drm/xe/xe_guc_submit.c
267
xe_guc_ct_stop(&guc->ct);
drivers/gpu/drm/xe/xe_guc_submit.c
2780
xe_guc_ct_send_g2h_handler(&guc->ct, action,
drivers/gpu/drm/xe/xe_guc_submit.c
2796
wake_up_all(&guc->ct.wq);
drivers/gpu/drm/xe/xe_guc_submit.c
2807
wake_up_all(&guc->ct.wq);
drivers/gpu/drm/xe/xe_guc_submit.c
2833
mutex_lock(&guc->ct.lock);
drivers/gpu/drm/xe/xe_guc_submit.c
2835
mutex_unlock(&guc->ct.lock);
drivers/gpu/drm/xe/xe_guc_submit.c
3097
xe_guc_ct_wake_waiters(&guc->ct);
drivers/gpu/drm/xe/xe_guc_submit.c
386
ret = xe_guc_ct_send_block(&guc->ct, data, count);
drivers/gpu/drm/xe/xe_guc_submit.c
545
xe_guc_ct_send(&guc->ct, (u32 *)&policy.h2g,
drivers/gpu/drm/xe/xe_guc_submit.c
558
xe_guc_ct_send(&guc->ct, (u32 *)&policy.h2g,
drivers/gpu/drm/xe/xe_guc_submit.c
771
ret = wait_event_timeout(guc->ct.wq,
drivers/gpu/drm/xe/xe_guc_submit.c
787
xe_guc_ct_send(&guc->ct, action, len, G2H_LEN_DW_MULTI_QUEUE_CONTEXT, 1);
drivers/gpu/drm/xe/xe_guc_submit.c
885
xe_guc_ct_send(&guc->ct, action, len, 0, 0);
drivers/gpu/drm/xe/xe_guc_submit.c
914
xe_guc_ct_send(&guc->ct, action, ARRAY_SIZE(action), 0, 0);
drivers/gpu/drm/xe/xe_guc_tlb_inval.c
110
return xe_guc_ct_send(&guc->ct, action, ARRAY_SIZE(action),
drivers/gpu/drm/xe/xe_guc_tlb_inval.c
197
return xe_guc_ct_initialized(&guc->ct);
drivers/gpu/drm/xe/xe_guc_tlb_inval.c
204
LNL_FLUSH_WORK(&guc->ct.g2h_worker);
drivers/gpu/drm/xe/xe_guc_tlb_inval.c
215
long delay = xe_guc_ct_queue_proc_time_jiffies(&guc->ct);
drivers/gpu/drm/xe/xe_guc_tlb_inval.c
34
return xe_guc_ct_send(&guc->ct, action, len,
drivers/gpu/drm/xe/xe_guc_tlb_inval.c
68
if (xe_guc_ct_enabled(&guc->ct) && guc->submission_state.enabled) {
drivers/gpu/drm/xe/xe_guc_types.h
62
struct xe_guc_ct ct;
drivers/gpu/ipu-v3/ipu-common.c
1159
struct irq_chip_type *ct;
drivers/gpu/ipu-v3/ipu-common.c
1197
ct = gc->chip_types;
drivers/gpu/ipu-v3/ipu-common.c
1198
ct->chip.irq_ack = irq_gc_ack_set_bit;
drivers/gpu/ipu-v3/ipu-common.c
1199
ct->chip.irq_mask = irq_gc_mask_clr_bit;
drivers/gpu/ipu-v3/ipu-common.c
1200
ct->chip.irq_unmask = irq_gc_mask_set_bit;
drivers/gpu/ipu-v3/ipu-common.c
1201
ct->regs.ack = IPU_INT_STAT(i / 32);
drivers/gpu/ipu-v3/ipu-common.c
1202
ct->regs.mask = IPU_INT_CTRL(i / 32);
drivers/iio/adc/rtq6056.c
369
int *ct, ret;
drivers/iio/adc/rtq6056.c
376
ct = &priv->vshuntct_us;
drivers/iio/adc/rtq6056.c
379
ct = &priv->vbusct_us;
drivers/iio/adc/rtq6056.c
390
*ct = 1000000 / rtq6056_samp_freq_list[selector];
drivers/infiniband/hw/hfi1/init.c
363
u16 ct = ctxt - dd->first_dyn_alloc_ctxt;
drivers/infiniband/hw/hfi1/init.c
367
if (ct < dd->rcv_entries.nctxt_extra) {
drivers/infiniband/hw/hfi1/init.c
368
base += ct * (dd->rcv_entries.ngroups + 1);
drivers/infiniband/hw/hfi1/init.c
372
(ct * dd->rcv_entries.ngroups);
drivers/irqchip/irq-atmel-aic-common.c
43
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/irqchip/irq-atmel-aic-common.c
45
ct->chip.irq_mask(d);
drivers/irqchip/irq-bcm7120-l2.c
218
struct irq_chip_type *ct;
drivers/irqchip/irq-bcm7120-l2.c
280
ct = gc->chip_types;
drivers/irqchip/irq-bcm7120-l2.c
283
ct->regs.mask = data->en_offset[idx];
drivers/irqchip/irq-bcm7120-l2.c
289
ct->chip.irq_mask = irq_gc_mask_clr_bit;
drivers/irqchip/irq-bcm7120-l2.c
290
ct->chip.irq_unmask = irq_gc_mask_set_bit;
drivers/irqchip/irq-bcm7120-l2.c
291
ct->chip.irq_ack = irq_gc_noop;
drivers/irqchip/irq-bcm7120-l2.c
300
gc->mask_cache = irq_reg_readl(gc, ct->regs.mask);
drivers/irqchip/irq-bcm7120-l2.c
308
ct->chip.irq_set_wake = irq_gc_set_wake;
drivers/irqchip/irq-bcm7120-l2.c
86
struct irq_chip_type *ct = gc->chip_types;
drivers/irqchip/irq-bcm7120-l2.c
90
irq_reg_writel(gc, gc->mask_cache | gc->wake_active, ct->regs.mask);
drivers/irqchip/irq-bcm7120-l2.c
95
struct irq_chip_type *ct = gc->chip_types;
drivers/irqchip/irq-bcm7120-l2.c
99
irq_reg_writel(gc, gc->mask_cache, ct->regs.mask);
drivers/irqchip/irq-brcmstb-l2.c
104
b->saved_mask = irq_reg_readl(gc, ct->regs.mask);
drivers/irqchip/irq-brcmstb-l2.c
108
irq_reg_writel(gc, ~gc->wake_active, ct->regs.disable);
drivers/irqchip/irq-brcmstb-l2.c
109
irq_reg_writel(gc, gc->wake_active, ct->regs.enable);
drivers/irqchip/irq-brcmstb-l2.c
126
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/irqchip/irq-brcmstb-l2.c
130
if (ct->chip.irq_ack) {
drivers/irqchip/irq-brcmstb-l2.c
133
ct->regs.ack);
drivers/irqchip/irq-brcmstb-l2.c
137
irq_reg_writel(gc, b->saved_mask, ct->regs.disable);
drivers/irqchip/irq-brcmstb-l2.c
138
irq_reg_writel(gc, ~b->saved_mask, ct->regs.enable);
drivers/irqchip/irq-brcmstb-l2.c
148
struct irq_chip_type *ct;
drivers/irqchip/irq-brcmstb-l2.c
215
ct = data->gc->chip_types;
drivers/irqchip/irq-brcmstb-l2.c
218
ct->regs.ack = init_params->cpu_clear;
drivers/irqchip/irq-brcmstb-l2.c
219
ct->chip.irq_ack = irq_gc_ack_set_bit;
drivers/irqchip/irq-brcmstb-l2.c
220
ct->chip.irq_mask_ack = irq_gc_mask_disable_and_ack_set;
drivers/irqchip/irq-brcmstb-l2.c
223
ct->chip.irq_mask_ack = irq_gc_mask_disable_reg;
drivers/irqchip/irq-brcmstb-l2.c
226
ct->chip.irq_mask = irq_gc_mask_disable_reg;
drivers/irqchip/irq-brcmstb-l2.c
227
ct->regs.disable = init_params->cpu_mask_set;
drivers/irqchip/irq-brcmstb-l2.c
228
ct->regs.mask = init_params->cpu_mask_status;
drivers/irqchip/irq-brcmstb-l2.c
230
ct->chip.irq_unmask = irq_gc_unmask_enable_reg;
drivers/irqchip/irq-brcmstb-l2.c
231
ct->regs.enable = init_params->cpu_mask_clear;
drivers/irqchip/irq-brcmstb-l2.c
233
ct->chip.irq_suspend = brcmstb_l2_intc_suspend;
drivers/irqchip/irq-brcmstb-l2.c
234
ct->chip.irq_resume = brcmstb_l2_intc_resume;
drivers/irqchip/irq-brcmstb-l2.c
235
ct->chip.irq_pm_shutdown = brcmstb_l2_intc_shutdown;
drivers/irqchip/irq-brcmstb-l2.c
242
ct->chip.irq_set_wake = irq_gc_set_wake;
drivers/irqchip/irq-brcmstb-l2.c
98
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/irqchip/irq-csky-apb-intc.c
49
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/irqchip/irq-csky-apb-intc.c
50
unsigned long ifr = ct->regs.mask - 8;
drivers/irqchip/irq-csky-apb-intc.c
54
*ct->mask_cache |= mask;
drivers/irqchip/irq-csky-apb-intc.c
55
irq_reg_writel(gc, *ct->mask_cache, ct->regs.mask);
drivers/irqchip/irq-dw-apb-ictl.c
102
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/irqchip/irq-dw-apb-ictl.c
105
writel_relaxed(~0, gc->reg_base + ct->regs.enable);
drivers/irqchip/irq-dw-apb-ictl.c
106
writel_relaxed(*ct->mask_cache, gc->reg_base + ct->regs.mask);
drivers/irqchip/irq-goldfish-pic.c
60
struct irq_chip_type *ct;
drivers/irqchip/irq-goldfish-pic.c
95
ct = gc->chip_types;
drivers/irqchip/irq-goldfish-pic.c
96
ct->regs.enable = GFPIC_REG_IRQ_ENABLE;
drivers/irqchip/irq-goldfish-pic.c
97
ct->regs.disable = GFPIC_REG_IRQ_DISABLE;
drivers/irqchip/irq-goldfish-pic.c
98
ct->chip.irq_unmask = irq_gc_unmask_enable_reg;
drivers/irqchip/irq-goldfish-pic.c
99
ct->chip.irq_mask = irq_gc_mask_disable_reg;
drivers/irqchip/irq-idt3243x.c
51
struct irq_chip_type *ct;
drivers/irqchip/irq-idt3243x.c
94
ct = gc->chip_types;
drivers/irqchip/irq-idt3243x.c
95
ct->regs.mask = IDT_PIC_IRQ_MASK;
drivers/irqchip/irq-idt3243x.c
96
ct->chip.irq_mask = irq_gc_mask_set_bit;
drivers/irqchip/irq-idt3243x.c
97
ct->chip.irq_unmask = irq_gc_mask_clr_bit;
drivers/irqchip/irq-ingenic-tcu.c
130
ct = gc->chip_types;
drivers/irqchip/irq-ingenic-tcu.c
135
ct->regs.disable = TCU_REG_TMSR;
drivers/irqchip/irq-ingenic-tcu.c
136
ct->regs.enable = TCU_REG_TMCR;
drivers/irqchip/irq-ingenic-tcu.c
137
ct->regs.ack = TCU_REG_TFCR;
drivers/irqchip/irq-ingenic-tcu.c
138
ct->chip.irq_unmask = ingenic_tcu_gc_unmask_enable_reg;
drivers/irqchip/irq-ingenic-tcu.c
139
ct->chip.irq_mask = ingenic_tcu_gc_mask_disable_reg;
drivers/irqchip/irq-ingenic-tcu.c
140
ct->chip.irq_mask_ack = ingenic_tcu_gc_mask_disable_reg_and_ack;
drivers/irqchip/irq-ingenic-tcu.c
141
ct->chip.flags = IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_SKIP_SET_WAKE;
drivers/irqchip/irq-ingenic-tcu.c
51
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/irqchip/irq-ingenic-tcu.c
56
regmap_write(map, ct->regs.ack, mask);
drivers/irqchip/irq-ingenic-tcu.c
57
regmap_write(map, ct->regs.enable, mask);
drivers/irqchip/irq-ingenic-tcu.c
58
*ct->mask_cache |= mask;
drivers/irqchip/irq-ingenic-tcu.c
64
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/irqchip/irq-ingenic-tcu.c
69
regmap_write(map, ct->regs.disable, mask);
drivers/irqchip/irq-ingenic-tcu.c
70
*ct->mask_cache &= ~mask;
drivers/irqchip/irq-ingenic-tcu.c
76
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/irqchip/irq-ingenic-tcu.c
81
regmap_write(map, ct->regs.ack, mask);
drivers/irqchip/irq-ingenic-tcu.c
82
regmap_write(map, ct->regs.disable, mask);
drivers/irqchip/irq-ingenic-tcu.c
89
struct irq_chip_type *ct;
drivers/irqchip/irq-ingenic.c
114
ct = gc->chip_types;
drivers/irqchip/irq-ingenic.c
115
ct->regs.enable = JZ_REG_INTC_CLEAR_MASK;
drivers/irqchip/irq-ingenic.c
116
ct->regs.disable = JZ_REG_INTC_SET_MASK;
drivers/irqchip/irq-ingenic.c
117
ct->chip.irq_unmask = irq_gc_unmask_enable_reg;
drivers/irqchip/irq-ingenic.c
118
ct->chip.irq_mask = irq_gc_mask_disable_reg;
drivers/irqchip/irq-ingenic.c
119
ct->chip.irq_mask_ack = irq_gc_mask_disable_reg;
drivers/irqchip/irq-ingenic.c
120
ct->chip.irq_set_wake = irq_gc_set_wake;
drivers/irqchip/irq-ingenic.c
121
ct->chip.flags = IRQCHIP_MASK_ON_SUSPEND;
drivers/irqchip/irq-ingenic.c
65
struct irq_chip_type *ct;
drivers/irqchip/irq-lan966x-oic.c
70
struct irq_chip_type *ct = irq_data_get_chip_type(data);
drivers/irqchip/irq-lan966x-oic.c
81
ct->chip.irq_ack(data);
drivers/irqchip/irq-lan966x-oic.c
82
ct->chip.irq_unmask(data);
drivers/irqchip/irq-lan966x-oic.c
90
struct irq_chip_type *ct = irq_data_get_chip_type(data);
drivers/irqchip/irq-lan966x-oic.c
94
ct->chip.irq_mask(data);
drivers/irqchip/irq-loongson-liointc.c
203
struct irq_chip_type *ct;
drivers/irqchip/irq-loongson-liointc.c
288
ct = gc->chip_types;
drivers/irqchip/irq-loongson-liointc.c
289
ct->regs.enable = LIOINTC_REG_INTC_ENABLE;
drivers/irqchip/irq-loongson-liointc.c
290
ct->regs.disable = LIOINTC_REG_INTC_DISABLE;
drivers/irqchip/irq-loongson-liointc.c
291
ct->chip.irq_unmask = irq_gc_unmask_enable_reg;
drivers/irqchip/irq-loongson-liointc.c
292
ct->chip.irq_mask = irq_gc_mask_disable_reg;
drivers/irqchip/irq-loongson-liointc.c
293
ct->chip.irq_mask_ack = irq_gc_mask_disable_reg;
drivers/irqchip/irq-loongson-liointc.c
294
ct->chip.irq_set_type = liointc_set_type;
drivers/irqchip/irq-loongson-liointc.c
295
ct->chip.flags = IRQCHIP_SKIP_SET_WAKE;
drivers/irqchip/irq-ls1x.c
107
struct irq_chip_type *ct;
drivers/irqchip/irq-ls1x.c
159
ct = gc->chip_types;
drivers/irqchip/irq-ls1x.c
160
ct[0].type = IRQ_TYPE_LEVEL_MASK;
drivers/irqchip/irq-ls1x.c
161
ct[0].regs.mask = LS_REG_INTC_EN;
drivers/irqchip/irq-ls1x.c
162
ct[0].regs.ack = LS_REG_INTC_CLR;
drivers/irqchip/irq-ls1x.c
163
ct[0].chip.irq_unmask = irq_gc_mask_set_bit;
drivers/irqchip/irq-ls1x.c
164
ct[0].chip.irq_mask = irq_gc_mask_clr_bit;
drivers/irqchip/irq-ls1x.c
165
ct[0].chip.irq_ack = irq_gc_ack_set_bit;
drivers/irqchip/irq-ls1x.c
166
ct[0].chip.irq_set_type = ls_intc_set_type;
drivers/irqchip/irq-ls1x.c
167
ct[0].handler = handle_level_irq;
drivers/irqchip/irq-ls1x.c
169
ct[1].type = IRQ_TYPE_EDGE_BOTH;
drivers/irqchip/irq-ls1x.c
170
ct[1].regs.mask = LS_REG_INTC_EN;
drivers/irqchip/irq-ls1x.c
171
ct[1].regs.ack = LS_REG_INTC_CLR;
drivers/irqchip/irq-ls1x.c
172
ct[1].chip.irq_unmask = irq_gc_mask_set_bit;
drivers/irqchip/irq-ls1x.c
173
ct[1].chip.irq_mask = irq_gc_mask_clr_bit;
drivers/irqchip/irq-ls1x.c
174
ct[1].chip.irq_ack = irq_gc_ack_set_bit;
drivers/irqchip/irq-ls1x.c
175
ct[1].chip.irq_set_type = ls_intc_set_type;
drivers/irqchip/irq-ls1x.c
176
ct[1].handler = handle_edge_irq;
drivers/irqchip/irq-mscc-ocelot.c
82
struct irq_chip_type *ct = irq_data_get_chip_type(data);
drivers/irqchip/irq-mscc-ocelot.c
98
*ct->mask_cache &= ~mask;
drivers/irqchip/irq-omap-intc.c
202
struct irq_chip_type *ct;
drivers/irqchip/irq-omap-intc.c
206
ct = gc->chip_types;
drivers/irqchip/irq-omap-intc.c
208
ct->type = IRQ_TYPE_LEVEL_MASK;
drivers/irqchip/irq-omap-intc.c
210
ct->chip.irq_ack = omap_mask_ack_irq;
drivers/irqchip/irq-omap-intc.c
211
ct->chip.irq_mask = irq_gc_mask_disable_reg;
drivers/irqchip/irq-omap-intc.c
212
ct->chip.irq_unmask = irq_gc_unmask_enable_reg;
drivers/irqchip/irq-omap-intc.c
214
ct->chip.flags |= IRQCHIP_SKIP_SET_WAKE;
drivers/irqchip/irq-omap-intc.c
216
ct->regs.enable = INTC_MIR_CLEAR0 + 32 * i;
drivers/irqchip/irq-omap-intc.c
217
ct->regs.disable = INTC_MIR_SET0 + 32 * i;
drivers/irqchip/irq-omap-intc.c
227
struct irq_chip_type *ct;
drivers/irqchip/irq-omap-intc.c
231
ct = gc->chip_types;
drivers/irqchip/irq-omap-intc.c
232
ct->chip.irq_ack = omap_mask_ack_irq;
drivers/irqchip/irq-omap-intc.c
233
ct->chip.irq_mask = irq_gc_mask_disable_reg;
drivers/irqchip/irq-omap-intc.c
234
ct->chip.irq_unmask = irq_gc_unmask_enable_reg;
drivers/irqchip/irq-omap-intc.c
235
ct->chip.flags |= IRQCHIP_SKIP_SET_WAKE;
drivers/irqchip/irq-omap-intc.c
237
ct->regs.enable = INTC_MIR_CLEAR0;
drivers/irqchip/irq-omap-intc.c
238
ct->regs.disable = INTC_MIR_SET0;
drivers/irqchip/irq-orion.c
130
struct irq_chip_type *ct = irq_data_get_chip_type(d);
drivers/irqchip/irq-orion.c
132
ct->chip.irq_ack(d);
drivers/irqchip/irq-orion.c
133
ct->chip.irq_unmask(d);
drivers/irqchip/irq-sunxi-nmi.c
108
struct irq_chip_type *ct = gc->chip_types;
drivers/irqchip/irq-sunxi-nmi.c
110
u32 ctrl_off = ct->regs.type;
drivers/irqchip/irq-sunxi-nmi.c
138
for (i = 0; i < gc->num_ct; i++, ct++)
drivers/irqchip/irq-sunxi-nmi.c
139
if (ct->type & flow_type)
drivers/irqchip/irq-sunxi-nmi.c
140
ctrl_off = ct->regs.type;
drivers/macintosh/windfarm.h
28
int (*set_value)(struct wf_control *ct, s32 val);
drivers/macintosh/windfarm.h
29
int (*get_value)(struct wf_control *ct, s32 *val);
drivers/macintosh/windfarm.h
30
s32 (*get_min)(struct wf_control *ct);
drivers/macintosh/windfarm.h
31
s32 (*get_max)(struct wf_control *ct);
drivers/macintosh/windfarm.h
32
void (*release)(struct wf_control *ct);
drivers/macintosh/windfarm.h
56
extern int wf_register_control(struct wf_control *ct);
drivers/macintosh/windfarm.h
57
extern void wf_unregister_control(struct wf_control *ct);
drivers/macintosh/windfarm.h
58
extern int wf_get_control(struct wf_control *ct);
drivers/macintosh/windfarm.h
59
extern void wf_put_control(struct wf_control *ct);
drivers/macintosh/windfarm.h
61
static inline int wf_control_set_max(struct wf_control *ct)
drivers/macintosh/windfarm.h
63
s32 vmax = ct->ops->get_max(ct);
drivers/macintosh/windfarm.h
64
return ct->ops->set_value(ct, vmax);
drivers/macintosh/windfarm.h
67
static inline int wf_control_set_min(struct wf_control *ct)
drivers/macintosh/windfarm.h
69
s32 vmin = ct->ops->get_min(ct);
drivers/macintosh/windfarm.h
70
return ct->ops->set_value(ct, vmin);
drivers/macintosh/windfarm.h
73
static inline int wf_control_set(struct wf_control *ct, s32 val)
drivers/macintosh/windfarm.h
75
return ct->ops->set_value(ct, val);
drivers/macintosh/windfarm.h
78
static inline int wf_control_get(struct wf_control *ct, s32 *val)
drivers/macintosh/windfarm.h
80
return ct->ops->get_value(ct, val);
drivers/macintosh/windfarm.h
83
static inline s32 wf_control_get_min(struct wf_control *ct)
drivers/macintosh/windfarm.h
85
return ct->ops->get_min(ct);
drivers/macintosh/windfarm.h
88
static inline s32 wf_control_get_max(struct wf_control *ct)
drivers/macintosh/windfarm.h
90
return ct->ops->get_max(ct);
drivers/macintosh/windfarm_core.c
149
struct wf_control *ct = container_of(kref, struct wf_control, ref);
drivers/macintosh/windfarm_core.c
151
DBG("wf: Deleting control %s\n", ct->name);
drivers/macintosh/windfarm_core.c
153
if (ct->ops && ct->ops->release)
drivers/macintosh/windfarm_core.c
154
ct->ops->release(ct);
drivers/macintosh/windfarm_core.c
156
kfree(ct);
drivers/macintosh/windfarm_core.c
209
struct wf_control *ct;
drivers/macintosh/windfarm_core.c
212
list_for_each_entry(ct, &wf_controls, link) {
drivers/macintosh/windfarm_core.c
213
if (!strcmp(ct->name, new_ct->name)) {
drivers/macintosh/windfarm_core.c
215
" duplicate control %s\n", ct->name);
drivers/macintosh/windfarm_core.c
242
void wf_unregister_control(struct wf_control *ct)
drivers/macintosh/windfarm_core.c
245
list_del(&ct->link);
drivers/macintosh/windfarm_core.c
248
DBG("wf: Unregistered control %s\n", ct->name);
drivers/macintosh/windfarm_core.c
250
kref_put(&ct->ref, wf_control_release);
drivers/macintosh/windfarm_core.c
254
int wf_get_control(struct wf_control *ct)
drivers/macintosh/windfarm_core.c
256
if (!try_module_get(ct->ops->owner))
drivers/macintosh/windfarm_core.c
258
kref_get(&ct->ref);
drivers/macintosh/windfarm_core.c
263
void wf_put_control(struct wf_control *ct)
drivers/macintosh/windfarm_core.c
265
struct module *mod = ct->ops->owner;
drivers/macintosh/windfarm_core.c
266
kref_put(&ct->ref, wf_control_release);
drivers/macintosh/windfarm_core.c
374
struct wf_control *ct;
drivers/macintosh/windfarm_core.c
382
list_for_each_entry(ct, &wf_controls, link)
drivers/macintosh/windfarm_core.c
383
wf_notify(WF_EVENT_NEW_CONTROL, ct);
drivers/macintosh/windfarm_cpufreq_clamp.c
22
static int clamp_set(struct wf_control *ct, s32 value)
drivers/macintosh/windfarm_cpufreq_clamp.c
39
static int clamp_get(struct wf_control *ct, s32 *value)
drivers/macintosh/windfarm_cpufreq_clamp.c
45
static s32 clamp_min(struct wf_control *ct)
drivers/macintosh/windfarm_cpufreq_clamp.c
50
static s32 clamp_max(struct wf_control *ct)
drivers/macintosh/windfarm_fcu_controls.c
144
static int wf_fcu_fan_set_rpm(struct wf_control *ct, s32 value)
drivers/macintosh/windfarm_fcu_controls.c
146
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
166
static int wf_fcu_fan_get_rpm(struct wf_control *ct, s32 *value)
drivers/macintosh/windfarm_fcu_controls.c
168
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
201
static int wf_fcu_fan_set_pwm(struct wf_control *ct, s32 value)
drivers/macintosh/windfarm_fcu_controls.c
203
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
223
static int wf_fcu_fan_get_pwm(struct wf_control *ct, s32 *value)
drivers/macintosh/windfarm_fcu_controls.c
225
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
252
static s32 wf_fcu_fan_min(struct wf_control *ct)
drivers/macintosh/windfarm_fcu_controls.c
254
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
259
static s32 wf_fcu_fan_max(struct wf_control *ct)
drivers/macintosh/windfarm_fcu_controls.c
261
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
78
static void wf_fcu_fan_release(struct wf_control *ct)
drivers/macintosh/windfarm_fcu_controls.c
80
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_pm112.c
275
struct wf_control *ct;
drivers/macintosh/windfarm_pm112.c
333
ct = cpu_fans[i];
drivers/macintosh/windfarm_pm112.c
334
if (ct == NULL)
drivers/macintosh/windfarm_pm112.c
336
err = ct->ops->set_value(ct, target * cpu_fan_scale[i] / 100);
drivers/macintosh/windfarm_pm112.c
339
"error %d\n", ct->name, err);
drivers/macintosh/windfarm_pm112.c
558
static void pm112_new_control(struct wf_control *ct)
drivers/macintosh/windfarm_pm112.c
562
if (cpufreq_clamp == NULL && !strcmp(ct->name, "cpufreq-clamp")) {
drivers/macintosh/windfarm_pm112.c
563
if (wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm112.c
564
cpufreq_clamp = ct;
drivers/macintosh/windfarm_pm112.c
568
if (!strcmp(ct->name, cpu_fan_names[i])) {
drivers/macintosh/windfarm_pm112.c
569
if (cpu_fans[i] == NULL && wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm112.c
570
cpu_fans[i] = ct;
drivers/macintosh/windfarm_pm112.c
576
if (!strcmp(ct->name, "backside-fan")) {
drivers/macintosh/windfarm_pm112.c
577
if (backside_fan == NULL && wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm112.c
578
backside_fan = ct;
drivers/macintosh/windfarm_pm112.c
579
} else if (!strcmp(ct->name, "slots-fan")) {
drivers/macintosh/windfarm_pm112.c
580
if (slots_fan == NULL && wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm112.c
581
slots_fan = ct;
drivers/macintosh/windfarm_pm112.c
582
} else if (!strcmp(ct->name, "drive-bay-fan")) {
drivers/macintosh/windfarm_pm112.c
583
if (drive_bay_fan == NULL && wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm112.c
584
drive_bay_fan = ct;
drivers/macintosh/windfarm_pm112.c
596
if ((ct = cpu_fans[i]) != NULL)
drivers/macintosh/windfarm_pm112.c
598
ct->ops->get_max(ct) * 100 / max_exhaust;
drivers/macintosh/windfarm_pm121.c
866
static struct wf_control* pm121_register_control(struct wf_control *ct,
drivers/macintosh/windfarm_pm121.c
870
if (controls[id] == NULL && !strcmp(ct->name, match)) {
drivers/macintosh/windfarm_pm121.c
871
if (wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm121.c
872
controls[id] = ct;
drivers/macintosh/windfarm_pm121.c
877
static void pm121_new_control(struct wf_control *ct)
drivers/macintosh/windfarm_pm121.c
884
all = pm121_register_control(ct, "optical-drive-fan", FAN_OD) && all;
drivers/macintosh/windfarm_pm121.c
885
all = pm121_register_control(ct, "hard-drive-fan", FAN_HD) && all;
drivers/macintosh/windfarm_pm121.c
886
all = pm121_register_control(ct, "cpu-fan", FAN_CPU) && all;
drivers/macintosh/windfarm_pm121.c
887
all = pm121_register_control(ct, "cpufreq-clamp", CPUFREQ) && all;
drivers/macintosh/windfarm_pm72.c
669
static void pm72_new_control(struct wf_control *ct)
drivers/macintosh/windfarm_pm72.c
674
if (!strcmp(ct->name, "cpu-front-fan-0"))
drivers/macintosh/windfarm_pm72.c
675
cpu_front_fans[0] = ct;
drivers/macintosh/windfarm_pm72.c
676
else if (!strcmp(ct->name, "cpu-front-fan-1"))
drivers/macintosh/windfarm_pm72.c
677
cpu_front_fans[1] = ct;
drivers/macintosh/windfarm_pm72.c
678
else if (!strcmp(ct->name, "cpu-rear-fan-0"))
drivers/macintosh/windfarm_pm72.c
679
cpu_rear_fans[0] = ct;
drivers/macintosh/windfarm_pm72.c
680
else if (!strcmp(ct->name, "cpu-rear-fan-1"))
drivers/macintosh/windfarm_pm72.c
681
cpu_rear_fans[1] = ct;
drivers/macintosh/windfarm_pm72.c
682
else if (!strcmp(ct->name, "cpu-pump-0"))
drivers/macintosh/windfarm_pm72.c
683
cpu_pumps[0] = ct;
drivers/macintosh/windfarm_pm72.c
684
else if (!strcmp(ct->name, "cpu-pump-1"))
drivers/macintosh/windfarm_pm72.c
685
cpu_pumps[1] = ct;
drivers/macintosh/windfarm_pm72.c
686
else if (!strcmp(ct->name, "backside-fan"))
drivers/macintosh/windfarm_pm72.c
687
backside_fan = ct;
drivers/macintosh/windfarm_pm72.c
688
else if (!strcmp(ct->name, "slots-fan"))
drivers/macintosh/windfarm_pm72.c
689
slots_fan = ct;
drivers/macintosh/windfarm_pm72.c
690
else if (!strcmp(ct->name, "drive-bay-fan"))
drivers/macintosh/windfarm_pm72.c
691
drives_fan = ct;
drivers/macintosh/windfarm_pm72.c
692
else if (!strcmp(ct->name, "cpufreq-clamp"))
drivers/macintosh/windfarm_pm72.c
693
cpufreq_clamp = ct;
drivers/macintosh/windfarm_pm81.c
610
static void wf_smu_new_control(struct wf_control *ct)
drivers/macintosh/windfarm_pm81.c
615
if (fan_cpu_main == NULL && !strcmp(ct->name, "cpu-fan")) {
drivers/macintosh/windfarm_pm81.c
616
if (wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm81.c
617
fan_cpu_main = ct;
drivers/macintosh/windfarm_pm81.c
620
if (fan_system == NULL && !strcmp(ct->name, "system-fan")) {
drivers/macintosh/windfarm_pm81.c
621
if (wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm81.c
622
fan_system = ct;
drivers/macintosh/windfarm_pm81.c
625
if (cpufreq_clamp == NULL && !strcmp(ct->name, "cpufreq-clamp")) {
drivers/macintosh/windfarm_pm81.c
626
if (wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm81.c
627
cpufreq_clamp = ct;
drivers/macintosh/windfarm_pm81.c
640
if (fan_hd == NULL && !strcmp(ct->name, "drive-bay-fan")) {
drivers/macintosh/windfarm_pm81.c
641
if (wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm81.c
642
fan_hd = ct;
drivers/macintosh/windfarm_pm91.c
535
static void wf_smu_new_control(struct wf_control *ct)
drivers/macintosh/windfarm_pm91.c
540
if (fan_cpu_main == NULL && !strcmp(ct->name, "cpu-rear-fan-0")) {
drivers/macintosh/windfarm_pm91.c
541
if (wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm91.c
542
fan_cpu_main = ct;
drivers/macintosh/windfarm_pm91.c
545
if (fan_cpu_second == NULL && !strcmp(ct->name, "cpu-rear-fan-1")) {
drivers/macintosh/windfarm_pm91.c
546
if (wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm91.c
547
fan_cpu_second = ct;
drivers/macintosh/windfarm_pm91.c
550
if (fan_cpu_third == NULL && !strcmp(ct->name, "cpu-front-fan-0")) {
drivers/macintosh/windfarm_pm91.c
551
if (wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm91.c
552
fan_cpu_third = ct;
drivers/macintosh/windfarm_pm91.c
555
if (cpufreq_clamp == NULL && !strcmp(ct->name, "cpufreq-clamp")) {
drivers/macintosh/windfarm_pm91.c
556
if (wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm91.c
557
cpufreq_clamp = ct;
drivers/macintosh/windfarm_pm91.c
560
if (fan_hd == NULL && !strcmp(ct->name, "drive-bay-fan")) {
drivers/macintosh/windfarm_pm91.c
561
if (wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm91.c
562
fan_hd = ct;
drivers/macintosh/windfarm_pm91.c
565
if (fan_slots == NULL && !strcmp(ct->name, "slots-fan")) {
drivers/macintosh/windfarm_pm91.c
566
if (wf_get_control(ct) == 0)
drivers/macintosh/windfarm_pm91.c
567
fan_slots = ct;
drivers/macintosh/windfarm_rm31.c
567
static void rm31_new_control(struct wf_control *ct)
drivers/macintosh/windfarm_rm31.c
571
if (!strcmp(ct->name, "cpu-fan-a-0"))
drivers/macintosh/windfarm_rm31.c
572
cpu_fans[0][0] = ct;
drivers/macintosh/windfarm_rm31.c
573
else if (!strcmp(ct->name, "cpu-fan-b-0"))
drivers/macintosh/windfarm_rm31.c
574
cpu_fans[0][1] = ct;
drivers/macintosh/windfarm_rm31.c
575
else if (!strcmp(ct->name, "cpu-fan-c-0"))
drivers/macintosh/windfarm_rm31.c
576
cpu_fans[0][2] = ct;
drivers/macintosh/windfarm_rm31.c
577
else if (!strcmp(ct->name, "cpu-fan-a-1"))
drivers/macintosh/windfarm_rm31.c
578
cpu_fans[1][0] = ct;
drivers/macintosh/windfarm_rm31.c
579
else if (!strcmp(ct->name, "cpu-fan-b-1"))
drivers/macintosh/windfarm_rm31.c
580
cpu_fans[1][1] = ct;
drivers/macintosh/windfarm_rm31.c
581
else if (!strcmp(ct->name, "cpu-fan-c-1"))
drivers/macintosh/windfarm_rm31.c
582
cpu_fans[1][2] = ct;
drivers/macintosh/windfarm_rm31.c
583
else if (!strcmp(ct->name, "backside-fan"))
drivers/macintosh/windfarm_rm31.c
584
backside_fan = ct;
drivers/macintosh/windfarm_rm31.c
585
else if (!strcmp(ct->name, "slots-fan"))
drivers/macintosh/windfarm_rm31.c
586
slots_fan = ct;
drivers/macintosh/windfarm_rm31.c
587
else if (!strcmp(ct->name, "cpufreq-clamp"))
drivers/macintosh/windfarm_rm31.c
588
cpufreq_clamp = ct;
drivers/macintosh/windfarm_smu_controls.c
109
static void smu_fan_release(struct wf_control *ct)
drivers/macintosh/windfarm_smu_controls.c
111
struct smu_fan_control *fct = to_smu_fan(ct);
drivers/macintosh/windfarm_smu_controls.c
116
static int smu_fan_set(struct wf_control *ct, s32 value)
drivers/macintosh/windfarm_smu_controls.c
118
struct smu_fan_control *fct = to_smu_fan(ct);
drivers/macintosh/windfarm_smu_controls.c
129
static int smu_fan_get(struct wf_control *ct, s32 *value)
drivers/macintosh/windfarm_smu_controls.c
131
struct smu_fan_control *fct = to_smu_fan(ct);
drivers/macintosh/windfarm_smu_controls.c
136
static s32 smu_fan_min(struct wf_control *ct)
drivers/macintosh/windfarm_smu_controls.c
138
struct smu_fan_control *fct = to_smu_fan(ct);
drivers/macintosh/windfarm_smu_controls.c
142
static s32 smu_fan_max(struct wf_control *ct)
drivers/macintosh/windfarm_smu_controls.c
144
struct smu_fan_control *fct = to_smu_fan(ct);
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1337
struct s5p_jpeg_ctx *ct = file_to_ctx(file);
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1340
ct->mode == S5P_JPEG_DECODE && !ct->hdr_parsed)
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1342
q_data = get_q_data(ct, f->type);
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1581
static int s5p_jpeg_s_fmt(struct s5p_jpeg_ctx *ct, struct v4l2_format *f)
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1590
vq = v4l2_m2m_get_vq(ct->fh.m2m_ctx, f->type);
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1592
q_data = get_q_data(ct, f->type);
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1596
v4l2_err(&ct->jpeg->v4l2_dev, "%s queue busy\n", __func__);
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1603
q_data->fmt = s5p_jpeg_find_format(ct, pix->pixelformat, f_type);
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1604
if (ct->mode == S5P_JPEG_ENCODE ||
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1605
(ct->mode == S5P_JPEG_DECODE &&
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1617
if (ct->jpeg->variant->hw_ex4_compat &&
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1618
f_type == FMT_TYPE_OUTPUT && ct->mode == S5P_JPEG_ENCODE)
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1619
q_data->size = exynos4_jpeg_get_output_buffer_size(ct,
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1630
ctrl_subs = v4l2_ctrl_find(&ct->ctrl_handler,
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1634
ct->crop_altered = false;
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1643
if (!ct->crop_altered &&
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1644
((ct->mode == S5P_JPEG_DECODE && f_type == FMT_TYPE_CAPTURE) ||
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1645
(ct->mode == S5P_JPEG_ENCODE && f_type == FMT_TYPE_OUTPUT))) {
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1646
ct->crop_rect.width = pix->width;
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1647
ct->crop_rect.height = pix->height;
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1655
if (ct->mode == S5P_JPEG_DECODE &&
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1657
ct->jpeg->variant->hw3250_compat &&
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1659
ct->scale_factor > 2) {
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1660
scale_rect.width = ct->out_q.w / 2;
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1661
scale_rect.height = ct->out_q.h / 2;
drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c
1662
exynos3250_jpeg_try_downscale(ct, &scale_rect);
drivers/media/rc/img-ir/img-ir-hw.c
629
unsigned int ct;
drivers/media/rc/img-ir/img-ir-hw.c
632
ct = dec->control.code_type;
drivers/media/rc/img-ir/img-ir-hw.c
633
if (priv->hw.ct_quirks[ct] & IMG_IR_QUIRK_CODE_BROKEN)
drivers/media/rc/img-ir/img-ir-hw.c
958
unsigned int ct;
drivers/media/rc/img-ir/img-ir-hw.c
964
ct = hw->decoder->control.code_type;
drivers/media/rc/img-ir/img-ir-hw.c
968
if (!(priv->hw.ct_quirks[ct] & IMG_IR_QUIRK_CODE_IRQ) ||
drivers/media/rc/img-ir/img-ir-hw.c
996
if (hw->ct_quirks[ct] & IMG_IR_QUIRK_CODE_LEN_INCR)
drivers/media/rc/imon.c
1184
ktime_t ct;
drivers/media/rc/imon.c
1191
ct = ktime_get();
drivers/media/rc/imon.c
1192
msec = ktime_ms_delta(ct, prev_time);
drivers/media/rc/imon.c
1193
msec_hit = ktime_ms_delta(ct, hit_time);
drivers/media/rc/imon.c
1204
prev_time = ct;
drivers/media/rc/imon.c
1242
hit_time = ct;
drivers/media/usb/gspca/stv06xx/stv06xx_hdcs.c
168
int ct;
drivers/media/usb/gspca/stv06xx/stv06xx_hdcs.c
181
ct = hdcs->exp.cto + hdcs->psmp + (HDCS_ADC_START_SIG_DUR + 2);
drivers/media/usb/gspca/stv06xx/stv06xx_hdcs.c
182
cp = hdcs->exp.cto + (hdcs->w * ct / 2);
drivers/media/usb/gspca/stv06xx/stv06xx_hdcs.c
195
srowexp = hdcs->w - (cycles + hdcs->exp.er + 13) / ct;
drivers/media/usb/gspca/stv06xx/stv06xx_hdcs.c
197
mnct = (hdcs->exp.er + 12 + ct - 1) / ct;
drivers/media/usb/gspca/stv06xx/stv06xx_hdcs.c
203
mnct = (hdcs->exp.er + 5 + ct - 1) / ct;
drivers/media/usb/gspca/stv06xx/stv06xx_hdcs.c
204
max_srowexp = cp - mnct * ct - 1;
drivers/media/usb/pvrusb2/pvrusb2-hdw.c
2064
const struct pvr2_device_client_table *ct;
drivers/media/usb/pvrusb2/pvrusb2-hdw.c
2072
ct = &hdw->hdw_desc->client_table;
drivers/media/usb/pvrusb2/pvrusb2-hdw.c
2073
for (idx = 0; idx < ct->cnt; idx++) {
drivers/media/usb/pvrusb2/pvrusb2-hdw.c
2074
if (pvr2_hdw_load_subdev(hdw, &ct->lst[idx]) < 0) okFl = 0;
drivers/mtd/tests/oobtest.c
117
const void *ct, size_t count)
drivers/mtd/tests/oobtest.c
124
for (su1 = cs, su2 = ct; 0 < count; ++su1, ++su2, count--, i++) {
drivers/mtd/tests/oobtest.c
137
#define memcmpshow(addr, cs, ct, count) memcmpshowoffset((addr), 0, (cs), (ct),\
drivers/net/ethernet/amd/nmclan_cs.c
536
int ct = 0;
drivers/net/ethernet/amd/nmclan_cs.c
542
if(++ct > 500)
drivers/net/ethernet/amd/nmclan_cs.c
586
ct = 0;
drivers/net/ethernet/amd/nmclan_cs.c
589
if(++ ct > 500)
drivers/net/ethernet/emulex/benet/be_hw.h
271
u8 ct[2]; /* dword 0 */
drivers/net/ethernet/emulex/benet/be_hw.h
319
u8 ct[2]; /* dword 1 */
drivers/net/ethernet/emulex/benet/be_hw.h
352
u8 ct[2]; /* dword 1 */
drivers/net/ethernet/freescale/enetc/enetc_hw.h
831
__le32 ct;
drivers/net/ethernet/freescale/enetc/enetc_hw.h
966
u32 ct;
drivers/net/ethernet/freescale/enetc/enetc_qos.c
807
sgcl_data->ct = sgi->cycletime;
drivers/net/ethernet/freescale/enetc/enetc_qos.c
94
gcl_data->ct = cpu_to_le32(admin_conf->cycle_time);
drivers/net/ethernet/mellanox/mlx5/core/en/tc/act/ct.c
14
return !((act->ct.action & TCA_CT_ACT_COMMIT) &&
drivers/net/ethernet/mellanox/mlx5/core/en/tc/act/ct.c
56
if (act->ct.action & TCA_CT_ACT_CLEAR)
drivers/net/ethernet/mellanox/mlx5/core/en/tc/act/ct.c
65
return !(act->ct.action & TCA_CT_ACT_CLEAR);
drivers/net/ethernet/mellanox/mlx5/core/en/tc/ct_fs.h
19
int (*init)(struct mlx5_ct_fs *fs, struct mlx5_flow_table *ct,
drivers/net/ethernet/mellanox/mlx5/core/en/tc/ct_fs_dmfs.c
18
mlx5_ct_fs_dmfs_init(struct mlx5_ct_fs *fs, struct mlx5_flow_table *ct,
drivers/net/ethernet/mellanox/mlx5/core/en/tc/ct_fs_hmfs.c
45
static int mlx5_ct_fs_hmfs_init(struct mlx5_ct_fs *fs, struct mlx5_flow_table *ct,
drivers/net/ethernet/mellanox/mlx5/core/en/tc/ct_fs_hmfs.c
52
ct_tbl = ct->fs_hws_table.hws_table;
drivers/net/ethernet/mellanox/mlx5/core/en/tc/ct_fs_smfs.c
182
mlx5_ct_fs_smfs_init(struct mlx5_ct_fs *fs, struct mlx5_flow_table *ct,
drivers/net/ethernet/mellanox/mlx5/core/en/tc/ct_fs_smfs.c
190
ct_tbl = mlx5_smfs_table_get_from_fs_ft(ct);
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
1597
attr->ct_attr.ct_action |= act->ct.action; /* So we can have clear + ct */
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
1598
attr->ct_attr.zone = act->ct.zone;
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
1599
if (!(act->ct.action & TCA_CT_ACT_CLEAR))
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
1600
attr->ct_attr.nf_ft = act->ct.flow_table;
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
1670
dest.ft = nat ? ct_priv->ct_nat : ct_priv->ct;
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
2018
attr->dest_ft = nat ? ct_priv->ct_nat : ct_priv->ct;
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
2123
err = ct_priv->fs_ops->init(ct_priv->fs, ct_priv->ct, ct_priv->ct_nat, post_ct);
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
2330
ct_priv->ct = mlx5_chains_create_global_table(chains);
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
2331
if (IS_ERR(ct_priv->ct)) {
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
2332
err = PTR_ERR(ct_priv->ct);
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
2348
err = tc_ct_add_ct_table_miss_rule(ct_priv->ct_nat, ct_priv->ct,
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
2387
mlx5_chains_destroy_global_table(chains, ct_priv->ct);
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
2417
mlx5_chains_destroy_global_table(chains, ct_priv->ct);
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
70
struct mlx5_flow_table *ct;
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
840
attr->ft = nat ? ct_priv->ct_nat : ct_priv->ct;
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
364
return tc->ct;
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
5295
tc->ct = mlx5_tc_ct_init(priv, tc->chains, &tc->mod_hdr,
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
5323
mlx5_tc_ct_clean(tc->ct);
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
5366
mlx5_tc_ct_clean(tc->ct);
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
5819
ct_priv = tc->ct;
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
98
struct mlx5_tc_ct_priv *ct;
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
106
if (act->ct.action == TCA_CT_ACT_CLEAR) {
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
1463
if (act->ct.action == TCA_CT_ACT_NAT)
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
1744
if (act->id == FLOW_ACTION_CT && act->ct.action != TCA_CT_ACT_CLEAR)
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
1830
zt = get_nfp_zone_entry(priv, ct_act->ct.zone, false);
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
1838
zt->nft = ct_act->ct.flow_table;
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
1891
struct flow_match_ct ct;
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
1912
flow_rule_match_ct(rule, &ct);
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
1913
if (!ct.mask->ct_zone) {
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
1915
} else if (ct.mask->ct_zone != U16_MAX) {
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
1921
zt = get_nfp_zone_entry(priv, ct.key->ct_zone, wildcarded);
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
589
struct flow_match_ct ct;
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
597
flow_rule_match_ct(post_ct_entry->rule, &ct);
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
599
if ((ct.key->ct_labels[i] & ct.mask->ct_labels[i]) ^
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
600
(act_lbl[i] & ct.mask->ct_labels[i]))
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
604
if ((ct.key->ct_mark & ct.mask->ct_mark) ^
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
605
(ct_met->ct_metadata.mark & ct.mask->ct_mark))
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
61
struct flow_match_ct ct;
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
65
flow_rule_match_ct(rule, &ct);
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
66
if (ct.key->ct_state)
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
78
if ((!act->ct.action || act->ct.action == TCA_CT_ACT_NAT))
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
94
struct flow_match_ct ct;
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
98
flow_rule_match_ct(rule, &ct);
drivers/net/ethernet/netronome/nfp/flower/conntrack.c
99
if (ct.key->ct_state & TCA_FLOWER_KEY_CT_FLAGS_ESTABLISHED)
drivers/net/ethernet/netronome/nfp/flower/offload.c
1306
struct flow_match_ct ct;
drivers/net/ethernet/netronome/nfp/flower/offload.c
1309
flow_rule_match_ct(rule, &ct);
drivers/net/ethernet/netronome/nfp/flower/offload.c
1311
if (memchr_inv(ct.key, 0, sizeof(*ct.key)))
drivers/net/ethernet/sfc/mae.c
1933
rc = TABLE_POPULATE_KEY(key, ct, eth_proto, conn->eth_proto);
drivers/net/ethernet/sfc/mae.c
1936
rc = TABLE_POPULATE_KEY(key, ct, ip_proto, conn->ip_proto);
drivers/net/ethernet/sfc/mae.c
1940
rc = TABLE_POPULATE_KEY(key, ct, src_ip, conn->src_ip6);
drivers/net/ethernet/sfc/mae.c
1942
rc = TABLE_POPULATE_KEY_IPV4(key, ct, src_ip, conn->src_ip);
drivers/net/ethernet/sfc/mae.c
1946
rc = TABLE_POPULATE_KEY(key, ct, dst_ip, conn->dst_ip6);
drivers/net/ethernet/sfc/mae.c
1948
rc = TABLE_POPULATE_KEY_IPV4(key, ct, dst_ip, conn->dst_ip);
drivers/net/ethernet/sfc/mae.c
1951
rc = TABLE_POPULATE_KEY(key, ct, l4_sport, conn->l4_sport);
drivers/net/ethernet/sfc/mae.c
1954
rc = TABLE_POPULATE_KEY(key, ct, l4_dport, conn->l4_dport);
drivers/net/ethernet/sfc/mae.c
1957
return TABLE_POPULATE_KEY(key, ct, zone, cpu_to_be16(conn->zone->zone));
drivers/net/ethernet/sfc/mae.c
1994
rc = TABLE_POPULATE_RESP_BOOL(resp, ct, dnat, conn->dnat);
drivers/net/ethernet/sfc/mae.c
1999
rc = TABLE_POPULATE_RESP(resp, ct, nat_ip, conn->nat_ip);
drivers/net/ethernet/sfc/mae.c
2002
rc = TABLE_POPULATE_RESP(resp, ct, l4_natport, conn->l4_natport);
drivers/net/ethernet/sfc/mae.c
2005
rc = TABLE_POPULATE_RESP(resp, ct, mark, cpu_to_be32(conn->mark));
drivers/net/ethernet/sfc/mae.c
2008
rc = TABLE_POPULATE_RESP_U24(resp, ct, counter_id, conn->cnt->fw_id);
drivers/net/ethernet/sfc/tc.c
1030
if (fa->ct.action & (TCA_CT_ACT_COMMIT |
drivers/net/ethernet/sfc/tc.c
1035
if (fa->ct.action & TCA_CT_ACT_CLEAR) {
drivers/net/ethernet/sfc/tc.c
1039
if (fa->ct.action & (TCA_CT_ACT_NAT |
drivers/net/ethernet/sfc/tc.c
1045
if (fa->ct.action) {
drivers/net/ethernet/sfc/tc.c
1047
fa->ct.action);
drivers/net/ethernet/sfc/tc.c
1050
ct_zone = efx_tc_ct_register_zone(efx, fa->ct.zone,
drivers/net/ethernet/sfc/tc.c
1051
fa->ct.flow_table);
drivers/net/ethernet/sfc/tc.c
2457
if (fa->ct.action != TCA_CT_ACT_NAT) {
drivers/net/ethernet/sfc/tc.c
2459
NL_SET_ERR_MSG_FMT_MOD(extack, "Can only offload CT 'nat' action in RHS rules, not %d", fa->ct.action);
drivers/net/wireless/ath/wil6210/txrx.c
644
int reverse_memcmp(const void *cs, const void *ct, size_t count)
drivers/net/wireless/ath/wil6210/txrx.c
649
for (su1 = cs + count - 1, su2 = ct + count - 1; count > 0;
drivers/net/wireless/ath/wil6210/wil6210.h
1428
int reverse_memcmp(const void *cs, const void *ct, size_t count);
drivers/net/wireless/intel/iwlwifi/mld/mld.h
267
ct:1;
drivers/net/wireless/intel/iwlwifi/mld/mld.h
376
mld->radio_kill.ct = state;
drivers/net/wireless/intel/iwlwifi/mld/mld.h
379
mld->radio_kill.hw || mld->radio_kill.ct);
drivers/net/wireless/intel/iwlwifi/mld/mld.h
387
mld->radio_kill.hw || mld->radio_kill.ct);
drivers/pci/endpoint/functions/pci-epf-vntb.c
1326
int off = ntb->reg->spad_offset, ct = ntb->reg->spad_count * sizeof(u32);
drivers/pci/endpoint/functions/pci-epf-vntb.c
1330
val = readl(base + off + ct + idx * sizeof(u32));
drivers/pci/endpoint/functions/pci-epf-vntb.c
1338
int off = ctrl->spad_offset, ct = ctrl->spad_count * sizeof(u32);
drivers/pci/endpoint/functions/pci-epf-vntb.c
1341
writel(val, base + off + ct + idx * sizeof(u32));
drivers/ps3/ps3av_cmd.c
608
info->pb1.ct = 0;
drivers/s390/char/keyboard.c
482
unsigned int ct;
drivers/s390/char/keyboard.c
525
ct = kbd->accent_table_size;
drivers/s390/char/keyboard.c
526
if (put_user(ct, &a->kb_cnt))
drivers/s390/char/keyboard.c
529
ct * sizeof(struct kbdiacruc)))
drivers/s390/char/keyboard.c
541
if (get_user(ct, &a->kb_cnt))
drivers/s390/char/keyboard.c
543
if (ct >= MAX_DIACR)
drivers/s390/char/keyboard.c
545
kbd->accent_table_size = ct;
drivers/s390/char/keyboard.c
546
for (i = 0; i < ct; i++) {
drivers/s390/char/keyboard.c
561
if (get_user(ct, &a->kb_cnt))
drivers/s390/char/keyboard.c
563
if (ct >= MAX_DIACR)
drivers/s390/char/keyboard.c
565
kbd->accent_table_size = ct;
drivers/s390/char/keyboard.c
567
ct * sizeof(struct kbdiacruc)))
drivers/s390/cio/device_ops.c
440
struct ciw *ccw_device_get_ciw(struct ccw_device *cdev, __u32 ct)
drivers/s390/cio/device_ops.c
447
if (cdev->private->dma_area->senseid.ciw[ciw_cnt].ct == ct)
drivers/s390/net/ctcm_mpc.c
131
__u32 ct, sw, rm, dup;
drivers/s390/net/ctcm_mpc.c
145
for (ct = 0; ct < len; ct++, ptr++, rptr++) {
drivers/s390/net/ctcm_mpc.c
149
scnprintf(boff, sizeof(boff), "%4.4X", (__u32)ct);
drivers/s390/scsi/zfcp_fc.c
1060
struct zfcp_fsf_ct_els *ct = job->dd_data;
drivers/s390/scsi/zfcp_fc.c
1071
ct->handler = zfcp_fc_ct_job_handler;
drivers/s390/scsi/zfcp_fc.c
1072
ret = zfcp_fsf_send_ct(wka_port, ct, NULL, job->timeout / HZ);
drivers/s390/scsi/zfcp_fsf.c
1089
struct zfcp_fsf_ct_els *ct = req->data;
drivers/s390/scsi/zfcp_fsf.c
1092
ct->status = -EINVAL;
drivers/s390/scsi/zfcp_fsf.c
1099
ct->status = 0;
drivers/s390/scsi/zfcp_fsf.c
1129
if (ct->handler)
drivers/s390/scsi/zfcp_fsf.c
1130
ct->handler(ct->handler_data);
drivers/s390/scsi/zfcp_fsf.c
1225
struct zfcp_fsf_ct_els *ct, mempool_t *pool,
drivers/s390/scsi/zfcp_fsf.c
1245
ret = zfcp_fsf_setup_ct_els(req, ct->req, ct->resp, timeout);
drivers/s390/scsi/zfcp_fsf.c
1251
ct->d_id = wka_port->d_id;
drivers/s390/scsi/zfcp_fsf.c
1252
req->data = ct;
drivers/scsi/elx/efct/efct_hw.c
2664
params->r_ctl = io->iparam.ct.r_ctl;
drivers/scsi/elx/efct/efct_hw.c
2665
params->type = io->iparam.ct.type;
drivers/scsi/elx/efct/efct_hw.c
2666
params->df_ctl = io->iparam.ct.df_ctl;
drivers/scsi/elx/efct/efct_hw.c
2668
params->ox_id = io->iparam.ct.ox_id;
drivers/scsi/elx/efct/efct_hw.c
2674
params->timeout = io->iparam.ct.timeout;
drivers/scsi/elx/libefc/efc_els.c
1060
els->io.iparam.ct.ox_id = ox_id;
drivers/scsi/elx/libefc/efc_els.c
1061
els->io.iparam.ct.r_ctl = 3;
drivers/scsi/elx/libefc/efc_els.c
1062
els->io.iparam.ct.type = FC_TYPE_CT;
drivers/scsi/elx/libefc/efc_els.c
1063
els->io.iparam.ct.df_ctl = 0;
drivers/scsi/elx/libefc/efc_els.c
1064
els->io.iparam.ct.timeout = 5;
drivers/scsi/elx/libefc/efc_els.c
899
} *ct;
drivers/scsi/elx/libefc/efc_els.c
903
els = efc_els_io_alloc(node, sizeof(*ct));
drivers/scsi/elx/libefc/efc_els.c
909
els->io.iparam.ct.r_ctl = FC_RCTL_ELS_REQ;
drivers/scsi/elx/libefc/efc_els.c
910
els->io.iparam.ct.type = FC_TYPE_CT;
drivers/scsi/elx/libefc/efc_els.c
911
els->io.iparam.ct.df_ctl = 0;
drivers/scsi/elx/libefc/efc_els.c
912
els->io.iparam.ct.timeout = EFC_FC_ELS_SEND_DEFAULT_TIMEOUT;
drivers/scsi/elx/libefc/efc_els.c
916
ct = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
917
memset(ct, 0, sizeof(*ct));
drivers/scsi/elx/libefc/efc_els.c
918
fcct_build_req_header(&ct->hdr, FC_NS_RFT_ID,
drivers/scsi/elx/libefc/efc_els.c
921
hton24(ct->rftid.fr_fid.fp_fid, node->rnode.nport->fc_id);
drivers/scsi/elx/libefc/efc_els.c
922
ct->rftid.fr_fts.ff_type_map[FC_TYPE_FCP / FC_NS_BPW] =
drivers/scsi/elx/libefc/efc_els.c
936
} *ct;
drivers/scsi/elx/libefc/efc_els.c
940
els = efc_els_io_alloc(node, sizeof(*ct));
drivers/scsi/elx/libefc/efc_els.c
946
els->io.iparam.ct.r_ctl = FC_RCTL_ELS_REQ;
drivers/scsi/elx/libefc/efc_els.c
947
els->io.iparam.ct.type = FC_TYPE_CT;
drivers/scsi/elx/libefc/efc_els.c
948
els->io.iparam.ct.df_ctl = 0;
drivers/scsi/elx/libefc/efc_els.c
949
els->io.iparam.ct.timeout = EFC_FC_ELS_SEND_DEFAULT_TIMEOUT;
drivers/scsi/elx/libefc/efc_els.c
952
ct = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
954
memset(ct, 0, sizeof(*ct));
drivers/scsi/elx/libefc/efc_els.c
955
fcct_build_req_header(&ct->hdr, FC_NS_RFF_ID,
drivers/scsi/elx/libefc/efc_els.c
958
hton24(ct->rffid.fr_fid.fp_fid, node->rnode.nport->fc_id);
drivers/scsi/elx/libefc/efc_els.c
960
ct->rffid.fr_feat |= FCP_FEAT_INIT;
drivers/scsi/elx/libefc/efc_els.c
962
ct->rffid.fr_feat |= FCP_FEAT_TARG;
drivers/scsi/elx/libefc/efc_els.c
963
ct->rffid.fr_type = FC_TYPE_FCP;
drivers/scsi/elx/libefc/efc_els.c
976
} *ct;
drivers/scsi/elx/libefc/efc_els.c
980
els = efc_els_io_alloc_size(node, sizeof(*ct), EFC_ELS_GID_PT_RSP_LEN);
drivers/scsi/elx/libefc/efc_els.c
986
els->io.iparam.ct.r_ctl = FC_RCTL_ELS_REQ;
drivers/scsi/elx/libefc/efc_els.c
987
els->io.iparam.ct.type = FC_TYPE_CT;
drivers/scsi/elx/libefc/efc_els.c
988
els->io.iparam.ct.df_ctl = 0;
drivers/scsi/elx/libefc/efc_els.c
989
els->io.iparam.ct.timeout = EFC_FC_ELS_SEND_DEFAULT_TIMEOUT;
drivers/scsi/elx/libefc/efc_els.c
993
ct = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
995
memset(ct, 0, sizeof(*ct));
drivers/scsi/elx/libefc/efc_els.c
996
fcct_build_req_header(&ct->hdr, FC_NS_GID_PT,
drivers/scsi/elx/libefc/efc_els.c
999
ct->gidpt.fn_pt_type = FC_TYPE_FCP;
drivers/scsi/elx/libefc/efclib.h
466
struct efc_io_ct_params ct;
drivers/scsi/libfc/fc_elsct.c
117
ct = fc_frame_payload_get(fp, sizeof(*ct));
drivers/scsi/libfc/fc_elsct.c
118
if (ct) {
drivers/scsi/libfc/fc_elsct.c
119
switch (ntohs(ct->ct_cmd)) {
drivers/scsi/libfc/fc_elsct.c
83
struct fc_ct_hdr *ct;
drivers/scsi/libfc/fc_encode.h
101
ct = fc_ct_hdr_fill(fp, op, sizeof(struct fc_ns_gid_ft),
drivers/scsi/libfc/fc_encode.h
103
ct->payload.gid.fn_fc4_type = FC_TYPE_FCP;
drivers/scsi/libfc/fc_encode.h
107
ct = fc_ct_hdr_fill(fp, op, sizeof(struct fc_ns_fid),
drivers/scsi/libfc/fc_encode.h
109
ct->payload.gid.fn_fc4_type = FC_TYPE_FCP;
drivers/scsi/libfc/fc_encode.h
110
hton24(ct->payload.fid.fp_fid, fc_id);
drivers/scsi/libfc/fc_encode.h
114
ct = fc_ct_hdr_fill(fp, op, sizeof(struct fc_ns_rft),
drivers/scsi/libfc/fc_encode.h
116
hton24(ct->payload.rft.fid.fp_fid, lport->port_id);
drivers/scsi/libfc/fc_encode.h
117
ct->payload.rft.fts = lport->fcts;
drivers/scsi/libfc/fc_encode.h
121
ct = fc_ct_hdr_fill(fp, op, sizeof(struct fc_ns_rff_id),
drivers/scsi/libfc/fc_encode.h
123
hton24(ct->payload.rff.fr_fid.fp_fid, lport->port_id);
drivers/scsi/libfc/fc_encode.h
124
ct->payload.rff.fr_type = FC_TYPE_FCP;
drivers/scsi/libfc/fc_encode.h
126
ct->payload.rff.fr_feat = FCP_FEAT_INIT;
drivers/scsi/libfc/fc_encode.h
128
ct->payload.rff.fr_feat |= FCP_FEAT_TARG;
drivers/scsi/libfc/fc_encode.h
132
ct = fc_ct_hdr_fill(fp, op, sizeof(struct fc_ns_rn_id),
drivers/scsi/libfc/fc_encode.h
134
hton24(ct->payload.rn.fr_fid.fp_fid, lport->port_id);
drivers/scsi/libfc/fc_encode.h
135
put_unaligned_be64(lport->wwnn, &ct->payload.rn.fr_wwn);
drivers/scsi/libfc/fc_encode.h
141
ct = fc_ct_hdr_fill(fp, op, sizeof(struct fc_ns_rspn) + len,
drivers/scsi/libfc/fc_encode.h
143
hton24(ct->payload.spn.fr_fid.fp_fid, lport->port_id);
drivers/scsi/libfc/fc_encode.h
144
memcpy(ct->payload.spn.fr_name,
drivers/scsi/libfc/fc_encode.h
146
ct->payload.spn.fr_name_len = len;
drivers/scsi/libfc/fc_encode.h
152
ct = fc_ct_hdr_fill(fp, op, sizeof(struct fc_ns_rsnn) + len,
drivers/scsi/libfc/fc_encode.h
154
put_unaligned_be64(lport->wwnn, &ct->payload.snn.fr_wwn);
drivers/scsi/libfc/fc_encode.h
155
memcpy(ct->payload.snn.fr_name,
drivers/scsi/libfc/fc_encode.h
157
ct->payload.snn.fr_name_len = len;
drivers/scsi/libfc/fc_encode.h
192
struct fc_ct_req *ct;
drivers/scsi/libfc/fc_encode.h
228
ct = fc_ct_hdr_fill(fp, op, len, FC_FST_MGMT,
drivers/scsi/libfc/fc_encode.h
232
put_unaligned_be64(lport->wwpn, &ct->payload.rhba.hbaid.id);
drivers/scsi/libfc/fc_encode.h
234
put_unaligned_be32(1, &ct->payload.rhba.port.numport);
drivers/scsi/libfc/fc_encode.h
237
&ct->payload.rhba.port.port[0].portname);
drivers/scsi/libfc/fc_encode.h
241
&ct->payload.rhba.hba_attrs.numattrs);
drivers/scsi/libfc/fc_encode.h
242
hba_attrs = &ct->payload.rhba.hba_attrs;
drivers/scsi/libfc/fc_encode.h
486
ct = fc_ct_hdr_fill(fp, op, len, FC_FST_MGMT,
drivers/scsi/libfc/fc_encode.h
491
&ct->payload.rpa.port.portname);
drivers/scsi/libfc/fc_encode.h
495
&ct->payload.rpa.hba_attrs.numattrs);
drivers/scsi/libfc/fc_encode.h
497
hba_attrs = &ct->payload.rpa.hba_attrs;
drivers/scsi/libfc/fc_encode.h
69
struct fc_ct_req *ct;
drivers/scsi/libfc/fc_encode.h
693
ct = fc_ct_hdr_fill(fp, op, len, FC_FST_MGMT,
drivers/scsi/libfc/fc_encode.h
697
&ct->payload.dprt.port.portname);
drivers/scsi/libfc/fc_encode.h
701
ct = fc_ct_hdr_fill(fp, op, len, FC_FST_MGMT,
drivers/scsi/libfc/fc_encode.h
704
put_unaligned_be64(lport->wwpn, &ct->payload.dhba.hbaid.id);
drivers/scsi/libfc/fc_encode.h
73
ct = fc_frame_payload_get(fp, ct_plen);
drivers/scsi/libfc/fc_encode.h
74
memset(ct, 0, ct_plen);
drivers/scsi/libfc/fc_encode.h
75
ct->hdr.ct_rev = FC_CT_REV;
drivers/scsi/libfc/fc_encode.h
76
ct->hdr.ct_fs_type = fs_type;
drivers/scsi/libfc/fc_encode.h
77
ct->hdr.ct_fs_subtype = subtype;
drivers/scsi/libfc/fc_encode.h
78
ct->hdr.ct_cmd = htons((u16) op);
drivers/scsi/libfc/fc_encode.h
79
return ct;
drivers/scsi/libfc/fc_encode.h
96
struct fc_ct_req *ct;
drivers/scsi/libfc/fc_lport.c
1120
struct fc_ct_hdr *ct;
drivers/scsi/libfc/fc_lport.c
1143
ct = fc_frame_payload_get(fp, sizeof(*ct));
drivers/scsi/libfc/fc_lport.c
1145
if (fh && ct && fh->fh_type == FC_TYPE_CT &&
drivers/scsi/libfc/fc_lport.c
1146
ct->ct_fs_type == FC_FST_DIR &&
drivers/scsi/libfc/fc_lport.c
1147
ct->ct_fs_subtype == FC_NS_SUBTYPE &&
drivers/scsi/libfc/fc_lport.c
1148
ntohs(ct->ct_cmd) == FC_FS_ACC)
drivers/scsi/libfc/fc_lport.c
1196
struct fc_ct_hdr *ct;
drivers/scsi/libfc/fc_lport.c
1219
ct = fc_frame_payload_get(fp, sizeof(*ct));
drivers/scsi/libfc/fc_lport.c
1221
if (fh && ct && fh->fh_type == FC_TYPE_CT &&
drivers/scsi/libfc/fc_lport.c
1222
ct->ct_fs_type == FC_FST_MGMT &&
drivers/scsi/libfc/fc_lport.c
1223
ct->ct_fs_subtype == FC_FDMI_SUBTYPE) {
drivers/scsi/libfc/fc_lport.c
1226
ct->ct_reason,
drivers/scsi/libfc/fc_lport.c
1227
ct->ct_explan);
drivers/scsi/libfc/fc_lport.c
1231
if ((ntohs(ct->ct_cmd) == FC_FS_RJT) && fc_host->fdmi_version == FDMI_V2) {
drivers/scsi/libfc/fc_lport.c
1237
} else if (ntohs(ct->ct_cmd) == FC_FS_ACC)
drivers/scsi/libfc/fc_lport.c
2085
struct fc_ct_req *ct;
drivers/scsi/libfc/fc_lport.c
2096
ct = fc_frame_payload_get(fp, len);
drivers/scsi/libfc/fc_lport.c
2100
ct, len);
drivers/scsi/lpfc/lpfc_els.c
1284
u8 *pcmd, ct;
drivers/scsi/lpfc/lpfc_els.c
1346
ct = SLI4_CT_FCFI;
drivers/scsi/lpfc/lpfc_els.c
1347
bf_set(wqe_ct, &wqe->els_req.wqe_com, ct);
drivers/scsi/mpt3sas/mpt3sas_base.c
410
struct chain_tracker *ct;
drivers/scsi/mpt3sas/mpt3sas_base.c
414
ct = &ioc->chain_lookup[index].chains_per_smid[j];
drivers/scsi/mpt3sas/mpt3sas_base.c
415
if (ct && ct->chain_buffer_dma == chain_buffer_dma)
drivers/scsi/mpt3sas/mpt3sas_base.c
416
return ct->chain_buffer;
drivers/scsi/mpt3sas/mpt3sas_base.c
5797
struct chain_tracker *ct;
drivers/scsi/mpt3sas/mpt3sas_base.c
5899
ct = &ioc->chain_lookup[i].chains_per_smid[j];
drivers/scsi/mpt3sas/mpt3sas_base.c
5900
if (ct && ct->chain_buffer)
drivers/scsi/mpt3sas/mpt3sas_base.c
5902
ct->chain_buffer,
drivers/scsi/mpt3sas/mpt3sas_base.c
5903
ct->chain_buffer_dma);
drivers/scsi/mpt3sas/mpt3sas_base.c
5970
struct chain_tracker *ct;
drivers/scsi/mpt3sas/mpt3sas_base.c
6003
ct = &ioc->chain_lookup[i].chains_per_smid[j];
drivers/scsi/mpt3sas/mpt3sas_base.c
6004
ct->chain_buffer =
drivers/scsi/mpt3sas/mpt3sas_base.c
6007
ct->chain_buffer_dma =
drivers/scsi/sd.c
193
int ct, rcd, wce, sp;
drivers/scsi/sd.c
216
ct = sysfs_match_string(sd_cache_types, buf);
drivers/scsi/sd.c
217
if (ct < 0)
drivers/scsi/sd.c
220
rcd = ct & 0x01 ? 1 : 0;
drivers/scsi/sd.c
221
wce = (ct & 0x02) && !sdkp->write_prot ? 1 : 0;
drivers/scsi/sd.c
436
int ct = sdkp->RCD + 2*sdkp->WCE;
drivers/scsi/sd.c
438
return sprintf(buf, "%s\n", sd_cache_types[ct]);
drivers/tty/vt/consolemap.c
632
int con_set_unimap(struct vc_data *vc, ushort ct, struct unipair __user *list)
drivers/tty/vt/consolemap.c
638
if (!ct)
drivers/tty/vt/consolemap.c
641
struct unipair *unilist __free(kvfree) = vmemdup_array_user(list, ct, sizeof(*unilist));
drivers/tty/vt/consolemap.c
663
for (plist = unilist; ct; ct--, plist++) {
drivers/tty/vt/consolemap.c
772
int con_get_unimap(struct vc_data *vc, ushort ct, ushort __user *uct,
drivers/tty/vt/consolemap.c
779
struct unipair *unilist __free(kvfree) = kvmalloc_array(ct, sizeof(*unilist), GFP_KERNEL);
drivers/tty/vt/consolemap.c
802
if (ect < ct) {
drivers/tty/vt/consolemap.c
812
if (copy_to_user(list, unilist, min(ect, ct) * sizeof(*unilist)))
drivers/tty/vt/consolemap.c
816
if (ect > ct)
drivers/tty/vt/keyboard.c
1709
unsigned int ct;
drivers/tty/vt/keyboard.c
1714
if (get_user(ct, &a->kb_cnt))
drivers/tty/vt/keyboard.c
1716
if (ct >= MAX_DIACR)
drivers/tty/vt/keyboard.c
1719
if (ct) {
drivers/tty/vt/keyboard.c
1721
ct, sizeof(struct kbdiacr));
drivers/tty/vt/keyboard.c
1727
accent_table_size = ct;
drivers/tty/vt/keyboard.c
1728
for (i = 0; i < ct; i++) {
drivers/tty/vt/keyboard.c
1743
unsigned int ct;
drivers/tty/vt/keyboard.c
1749
if (get_user(ct, &a->kb_cnt))
drivers/tty/vt/keyboard.c
1752
if (ct >= MAX_DIACR)
drivers/tty/vt/keyboard.c
1755
if (ct) {
drivers/tty/vt/keyboard.c
1757
ct, sizeof(struct kbdiacruc));
drivers/tty/vt/keyboard.c
1762
if (ct)
drivers/tty/vt/keyboard.c
1764
ct * sizeof(struct kbdiacruc));
drivers/tty/vt/keyboard.c
1765
accent_table_size = ct;
drivers/usb/storage/sddr09.c
1372
int ct = 0;
drivers/usb/storage/sddr09.c
1376
if (ct >= 1000)
drivers/usb/storage/sddr09.c
1379
ct++;
drivers/usb/storage/sddr09.c
1382
lbact += ct;
drivers/usb/storage/sddr09.c
638
int result, bulklen, nsg, ct;
drivers/usb/storage/sddr09.c
646
address = 040000; ct = 1;
drivers/usb/storage/sddr09.c
648
bulklen += (ct << 9);
drivers/usb/storage/sddr09.c
649
command[4*nsg+2] = ct;
drivers/usb/storage/sddr09.c
654
address = 0340000; ct = 1;
drivers/usb/storage/sddr09.c
656
bulklen += (ct << 9);
drivers/usb/storage/sddr09.c
657
command[4*nsg+2] = ct;
drivers/usb/storage/sddr09.c
662
address = 01000000; ct = 2;
drivers/usb/storage/sddr09.c
664
bulklen += (ct << 9);
drivers/usb/storage/sddr09.c
665
command[4*nsg+2] = ct;
drivers/video/fbdev/aty/atyfb.h
122
struct pll_ct ct;
drivers/video/fbdev/aty/atyfb_base.c
1864
u32 dsp_config = pll->ct.dsp_config;
drivers/video/fbdev/aty/atyfb_base.c
1865
u32 dsp_on_off = pll->ct.dsp_on_off;
drivers/video/fbdev/aty/atyfb_base.c
1867
clk.pll_ref_div = pll->ct.pll_ref_div;
drivers/video/fbdev/aty/atyfb_base.c
1868
clk.mclk_fb_div = pll->ct.mclk_fb_div;
drivers/video/fbdev/aty/atyfb_base.c
1869
clk.mclk_post_div = pll->ct.mclk_post_div_real;
drivers/video/fbdev/aty/atyfb_base.c
1870
clk.mclk_fb_mult = pll->ct.mclk_fb_mult;
drivers/video/fbdev/aty/atyfb_base.c
1871
clk.xclk_post_div = pll->ct.xclk_post_div_real;
drivers/video/fbdev/aty/atyfb_base.c
1872
clk.vclk_fb_div = pll->ct.vclk_fb_div;
drivers/video/fbdev/aty/atyfb_base.c
1873
clk.vclk_post_div = pll->ct.vclk_post_div_real;
drivers/video/fbdev/aty/atyfb_base.c
1893
pll->ct.pll_ref_div = clk.pll_ref_div;
drivers/video/fbdev/aty/atyfb_base.c
1894
pll->ct.mclk_fb_div = clk.mclk_fb_div;
drivers/video/fbdev/aty/atyfb_base.c
1895
pll->ct.mclk_post_div_real = clk.mclk_post_div;
drivers/video/fbdev/aty/atyfb_base.c
1896
pll->ct.mclk_fb_mult = clk.mclk_fb_mult;
drivers/video/fbdev/aty/atyfb_base.c
1897
pll->ct.xclk_post_div_real = clk.xclk_post_div;
drivers/video/fbdev/aty/atyfb_base.c
1898
pll->ct.vclk_fb_div = clk.vclk_fb_div;
drivers/video/fbdev/aty/atyfb_base.c
1899
pll->ct.vclk_post_div_real = clk.vclk_post_div;
drivers/video/fbdev/aty/atyfb_base.c
1900
pll->ct.dsp_config = (clk.dsp_xclks_per_row & 0x3fff) |
drivers/video/fbdev/aty/atyfb_base.c
1903
pll->ct.dsp_on_off = (clk.dsp_off & 0x7ff) |
drivers/video/fbdev/aty/atyfb_base.c
601
par->pll.ct.xres = 0;
drivers/video/fbdev/aty/atyfb_base.c
605
par->pll.ct.xres = var->xres;
drivers/video/fbdev/aty/mach64_ct.c
254
if ((err = aty_valid_pll_ct(info, vclk_per, &pll->ct)))
drivers/video/fbdev/aty/mach64_ct.c
256
if (M64_HAS(GTB_DSP) && (err = aty_dsp_gt(info, bpp, &pll->ct)))
drivers/video/fbdev/aty/mach64_ct.c
266
ret = par->ref_clk_per * pll->ct.pll_ref_div * pll->ct.vclk_post_div_real / pll->ct.vclk_fb_div / 2;
drivers/video/fbdev/aty/mach64_ct.c
268
if(pll->ct.xres > 0) {
drivers/video/fbdev/aty/mach64_ct.c
270
ret /= pll->ct.xres;
drivers/video/fbdev/aty/mach64_ct.c
293
pll->ct.pll_ext_cntl, pll->ct.pll_gen_cntl, pll->ct.pll_vclk_cntl);
drivers/video/fbdev/aty/mach64_ct.c
297
par->clk_wr_offset, pll->ct.vclk_fb_div,
drivers/video/fbdev/aty/mach64_ct.c
298
pll->ct.pll_ref_div, pll->ct.vclk_post_div, pll->ct.vclk_post_div_real);
drivers/video/fbdev/aty/mach64_ct.c
315
aty_st_pll_ct(PLL_VCLK_CNTL, pll->ct.pll_vclk_cntl, par);
drivers/video/fbdev/aty/mach64_ct.c
321
tmp |= ((pll->ct.vclk_post_div & 0x03U) << tmp2);
drivers/video/fbdev/aty/mach64_ct.c
328
tmp |= pll->ct.pll_ext_cntl;
drivers/video/fbdev/aty/mach64_ct.c
333
aty_st_pll_ct(tmp, (pll->ct.vclk_fb_div & 0xFFU), par);
drivers/video/fbdev/aty/mach64_ct.c
335
aty_st_pll_ct(PLL_GEN_CNTL, (pll->ct.pll_gen_cntl & (~(PLL_OVERRIDE | PLL_MCLK_RST))) | OSC_EN, par);
drivers/video/fbdev/aty/mach64_ct.c
338
aty_st_pll_ct(PLL_VCLK_CNTL, pll->ct.pll_vclk_cntl & ~(PLL_VCLK_RST), par);
drivers/video/fbdev/aty/mach64_ct.c
341
aty_st_pll_ct(PLL_GEN_CNTL, pll->ct.pll_gen_cntl, par);
drivers/video/fbdev/aty/mach64_ct.c
342
aty_st_pll_ct(PLL_VCLK_CNTL, pll->ct.pll_vclk_cntl, par);
drivers/video/fbdev/aty/mach64_ct.c
360
aty_st_le32(DSP_CONFIG, pll->ct.dsp_config, par);
drivers/video/fbdev/aty/mach64_ct.c
361
aty_st_le32(DSP_ON_OFF, pll->ct.dsp_on_off, par);
drivers/video/fbdev/aty/mach64_ct.c
385
pll->ct.vclk_post_div = (aty_ld_pll_ct(VCLK_POST_DIV, par) >> tmp) & 0x03U;
drivers/video/fbdev/aty/mach64_ct.c
387
pll->ct.pll_ext_cntl = aty_ld_pll_ct(PLL_EXT_CNTL, par) & 0x0FU;
drivers/video/fbdev/aty/mach64_ct.c
388
pll->ct.vclk_fb_div = aty_ld_pll_ct(VCLK0_FB_DIV + clock, par) & 0xFFU;
drivers/video/fbdev/aty/mach64_ct.c
389
pll->ct.pll_ref_div = aty_ld_pll_ct(PLL_REF_DIV, par);
drivers/video/fbdev/aty/mach64_ct.c
390
pll->ct.mclk_fb_div = aty_ld_pll_ct(MCLK_FB_DIV, par);
drivers/video/fbdev/aty/mach64_ct.c
392
pll->ct.pll_gen_cntl = aty_ld_pll_ct(PLL_GEN_CNTL, par);
drivers/video/fbdev/aty/mach64_ct.c
393
pll->ct.pll_vclk_cntl = aty_ld_pll_ct(PLL_VCLK_CNTL, par);
drivers/video/fbdev/aty/mach64_ct.c
396
pll->ct.dsp_config = aty_ld_le32(DSP_CONFIG, par);
drivers/video/fbdev/aty/mach64_ct.c
397
pll->ct.dsp_on_off = aty_ld_le32(DSP_ON_OFF, par);
drivers/video/fbdev/aty/mach64_ct.c
410
pll->ct.pll_ext_cntl = aty_ld_pll_ct(PLL_EXT_CNTL, par);
drivers/video/fbdev/aty/mach64_ct.c
411
pll->ct.xclk_post_div = pll->ct.pll_ext_cntl & 0x07;
drivers/video/fbdev/aty/mach64_ct.c
412
pll->ct.xclk_ref_div = 1;
drivers/video/fbdev/aty/mach64_ct.c
413
switch (pll->ct.xclk_post_div) {
drivers/video/fbdev/aty/mach64_ct.c
418
pll->ct.xclk_ref_div = 3;
drivers/video/fbdev/aty/mach64_ct.c
419
pll->ct.xclk_post_div = 0;
drivers/video/fbdev/aty/mach64_ct.c
423
printk(KERN_CRIT "atyfb: Unsupported xclk source: %d.\n", pll->ct.xclk_post_div);
drivers/video/fbdev/aty/mach64_ct.c
426
pll->ct.mclk_fb_mult = 2;
drivers/video/fbdev/aty/mach64_ct.c
427
if(pll->ct.pll_ext_cntl & PLL_MFB_TIMES_4_2B) {
drivers/video/fbdev/aty/mach64_ct.c
428
pll->ct.mclk_fb_mult = 4;
drivers/video/fbdev/aty/mach64_ct.c
429
pll->ct.xclk_post_div -= 1;
drivers/video/fbdev/aty/mach64_ct.c
434
__func__, pll->ct.mclk_fb_mult, pll->ct.xclk_post_div);
drivers/video/fbdev/aty/mach64_ct.c
440
pll->ct.xclkpagefaultdelay = ((memcntl & 0xc00) >> 10) + ((memcntl & 0x1000) >> 12) + trp + 2;
drivers/video/fbdev/aty/mach64_ct.c
441
pll->ct.xclkmaxrasdelay = ((memcntl & 0x70000) >> 16) + trp + 2;
drivers/video/fbdev/aty/mach64_ct.c
444
pll->ct.fifo_size = 32;
drivers/video/fbdev/aty/mach64_ct.c
446
pll->ct.fifo_size = 24;
drivers/video/fbdev/aty/mach64_ct.c
447
pll->ct.xclkpagefaultdelay += 2;
drivers/video/fbdev/aty/mach64_ct.c
448
pll->ct.xclkmaxrasdelay += 3;
drivers/video/fbdev/aty/mach64_ct.c
454
pll->ct.dsp_loop_latency = 10;
drivers/video/fbdev/aty/mach64_ct.c
456
pll->ct.dsp_loop_latency = 8;
drivers/video/fbdev/aty/mach64_ct.c
457
pll->ct.xclkpagefaultdelay += 2;
drivers/video/fbdev/aty/mach64_ct.c
463
pll->ct.dsp_loop_latency = 9;
drivers/video/fbdev/aty/mach64_ct.c
465
pll->ct.dsp_loop_latency = 8;
drivers/video/fbdev/aty/mach64_ct.c
466
pll->ct.xclkpagefaultdelay += 1;
drivers/video/fbdev/aty/mach64_ct.c
471
pll->ct.dsp_loop_latency = 11;
drivers/video/fbdev/aty/mach64_ct.c
473
pll->ct.dsp_loop_latency = 10;
drivers/video/fbdev/aty/mach64_ct.c
474
pll->ct.xclkpagefaultdelay += 1;
drivers/video/fbdev/aty/mach64_ct.c
478
pll->ct.dsp_loop_latency = 8;
drivers/video/fbdev/aty/mach64_ct.c
479
pll->ct.xclkpagefaultdelay += 3;
drivers/video/fbdev/aty/mach64_ct.c
482
pll->ct.dsp_loop_latency = 11;
drivers/video/fbdev/aty/mach64_ct.c
483
pll->ct.xclkpagefaultdelay += 3;
drivers/video/fbdev/aty/mach64_ct.c
487
if (pll->ct.xclkmaxrasdelay <= pll->ct.xclkpagefaultdelay)
drivers/video/fbdev/aty/mach64_ct.c
488
pll->ct.xclkmaxrasdelay = pll->ct.xclkpagefaultdelay + 1;
drivers/video/fbdev/aty/mach64_ct.c
497
pll->ct.dsp_loop_latency = (dsp_config & DSP_LOOP_LATENCY) >> 16;
drivers/video/fbdev/aty/mach64_ct.c
506
pll->ct.fifo_size = 32;
drivers/video/fbdev/aty/mach64_ct.c
508
pll->ct.fifo_size = 24;
drivers/video/fbdev/aty/mach64_ct.c
515
pll->ct.pll_ref_div = aty_ld_pll_ct(PLL_REF_DIV, par);
drivers/video/fbdev/aty/mach64_ct.c
517
pll->ct.xclk_post_div_real = aty_postdividers[pll_ext_cntl & 0x07];
drivers/video/fbdev/aty/mach64_ct.c
521
pll->ct.mclk_fb_div = mclk_fb_div;
drivers/video/fbdev/aty/mach64_ct.c
525
pll->ct.pll_ref_div = par->pll_per * 2 * 255 / par->ref_clk_per;
drivers/video/fbdev/aty/mach64_ct.c
528
q = par->ref_clk_per * pll->ct.pll_ref_div * 8 /
drivers/video/fbdev/aty/mach64_ct.c
529
(pll->ct.mclk_fb_mult * par->xclk_per);
drivers/video/fbdev/aty/mach64_ct.c
539
pll->ct.xclk_post_div_real = aty_postdividers[xpost_div];
drivers/video/fbdev/aty/mach64_ct.c
540
pll->ct.mclk_fb_div = q * pll->ct.xclk_post_div_real / 8;
drivers/video/fbdev/aty/mach64_ct.c
545
pll->ct.xclk_post_div = xpost_div;
drivers/video/fbdev/aty/mach64_ct.c
546
pll->ct.xclk_ref_div = 1;
drivers/video/fbdev/aty/mach64_ct.c
551
pllmclk = (1000000 * pll->ct.mclk_fb_mult * pll->ct.mclk_fb_div) /
drivers/video/fbdev/aty/mach64_ct.c
552
(par->ref_clk_per * pll->ct.pll_ref_div);
drivers/video/fbdev/aty/mach64_ct.c
554
__func__, pllmclk, pllmclk / pll->ct.xclk_post_div_real);
drivers/video/fbdev/aty/mach64_ct.c
558
pll->ct.pll_gen_cntl = OSC_EN;
drivers/video/fbdev/aty/mach64_ct.c
560
pll->ct.pll_gen_cntl = OSC_EN | DLL_PWDN /* | FORCE_DCLK_TRI_STATE */;
drivers/video/fbdev/aty/mach64_ct.c
563
pll->ct.pll_ext_cntl = 0;
drivers/video/fbdev/aty/mach64_ct.c
565
pll->ct.pll_ext_cntl = xpost_div;
drivers/video/fbdev/aty/mach64_ct.c
567
if (pll->ct.mclk_fb_mult == 4)
drivers/video/fbdev/aty/mach64_ct.c
568
pll->ct.pll_ext_cntl |= PLL_MFB_TIMES_4_2B;
drivers/video/fbdev/aty/mach64_ct.c
571
pll->ct.pll_gen_cntl |= (xpost_div << 4); /* mclk == xclk */
drivers/video/fbdev/aty/mach64_ct.c
577
pll->ct.pll_gen_cntl |= (6 << 4); /* mclk == sclk */
drivers/video/fbdev/aty/mach64_ct.c
579
q = par->ref_clk_per * pll->ct.pll_ref_div * 4 / par->mclk_per;
drivers/video/fbdev/aty/mach64_ct.c
589
pll->ct.sclk_fb_div = q * sclk_post_div_real / 8;
drivers/video/fbdev/aty/mach64_ct.c
590
pll->ct.spll_cntl2 = mpost_div << 4;
drivers/video/fbdev/aty/mach64_ct.c
592
pllsclk = (1000000 * 2 * pll->ct.sclk_fb_div) /
drivers/video/fbdev/aty/mach64_ct.c
593
(par->ref_clk_per * pll->ct.pll_ref_div);
drivers/video/fbdev/aty/mach64_ct.c
600
pll->ct.ext_vpll_cntl = aty_ld_pll_ct(EXT_VPLL_CNTL, par);
drivers/video/fbdev/aty/mach64_ct.c
601
pll->ct.ext_vpll_cntl &= ~(EXT_VPLL_EN | EXT_VPLL_VGA_EN | EXT_VPLL_INSYNC);
drivers/video/fbdev/aty/mach64_ct.c
619
aty_st_pll_ct(SCLK_FB_DIV, pll->ct.sclk_fb_div, par);
drivers/video/fbdev/aty/mach64_ct.c
620
aty_st_pll_ct(SPLL_CNTL2, pll->ct.spll_cntl2, par);
drivers/video/fbdev/aty/mach64_ct.c
628
aty_st_pll_ct(PLL_REF_DIV, pll->ct.pll_ref_div, par);
drivers/video/fbdev/aty/mach64_ct.c
629
aty_st_pll_ct(PLL_GEN_CNTL, pll->ct.pll_gen_cntl, par);
drivers/video/fbdev/aty/mach64_ct.c
630
aty_st_pll_ct(MCLK_FB_DIV, pll->ct.mclk_fb_div, par);
drivers/video/fbdev/aty/mach64_ct.c
631
aty_st_pll_ct(PLL_EXT_CNTL, pll->ct.pll_ext_cntl, par);
drivers/video/fbdev/aty/mach64_ct.c
632
aty_st_pll_ct(EXT_VPLL_CNTL, pll->ct.ext_vpll_cntl, par);
drivers/video/fbdev/omap2/omapfb/dss/dispc.c
662
const struct color_conv_coef *ct)
drivers/video/fbdev/omap2/omapfb/dss/dispc.c
666
dispc_write_reg(DISPC_OVL_CONV_COEF(plane, 0), CVAL(ct->rcr, ct->ry));
drivers/video/fbdev/omap2/omapfb/dss/dispc.c
667
dispc_write_reg(DISPC_OVL_CONV_COEF(plane, 1), CVAL(ct->gy, ct->rcb));
drivers/video/fbdev/omap2/omapfb/dss/dispc.c
668
dispc_write_reg(DISPC_OVL_CONV_COEF(plane, 2), CVAL(ct->gcb, ct->gcr));
drivers/video/fbdev/omap2/omapfb/dss/dispc.c
669
dispc_write_reg(DISPC_OVL_CONV_COEF(plane, 3), CVAL(ct->bcr, ct->by));
drivers/video/fbdev/omap2/omapfb/dss/dispc.c
670
dispc_write_reg(DISPC_OVL_CONV_COEF(plane, 4), CVAL(0, ct->bcb));
drivers/video/fbdev/omap2/omapfb/dss/dispc.c
672
REG_FLD_MOD(DISPC_OVL_ATTRIBUTES(plane), ct->full_range, 11, 11);
fs/binfmt_elf.c
1824
struct core_thread *ct;
fs/binfmt_elf.c
1882
for (ct = dump_task->signal->core_state->dumper.next; ct; ct = ct->next) {
fs/binfmt_elf.c
1887
t->task = ct->task;
fs/binfmt_elf_fdpic.c
1491
struct core_thread *ct;
fs/binfmt_elf_fdpic.c
1502
for (ct = current->signal->core_state->dumper.next;
fs/binfmt_elf_fdpic.c
1503
ct; ct = ct->next) {
fs/binfmt_elf_fdpic.c
1505
ct->task, &thread_status_size);
fs/btrfs/ioctl.c
3845
struct timespec64 ct = current_time(inode);
fs/btrfs/ioctl.c
3899
sa->rtime.sec = ct.tv_sec;
fs/btrfs/ioctl.c
3900
sa->rtime.nsec = ct.tv_nsec;
fs/btrfs/root-tree.c
465
struct timespec64 ct;
fs/btrfs/root-tree.c
467
ktime_get_real_ts64(&ct);
fs/btrfs/root-tree.c
470
btrfs_set_stack_timespec_sec(&item->ctime, ct.tv_sec);
fs/btrfs/root-tree.c
471
btrfs_set_stack_timespec_nsec(&item->ctime, ct.tv_nsec);
fs/dcache.c
265
static inline int dentry_string_cmp(const unsigned char *cs, const unsigned char *ct, unsigned tcount)
fs/dcache.c
271
b = load_unaligned_zeropad(ct);
fs/dcache.c
277
ct += sizeof(unsigned long);
fs/dcache.c
288
static inline int dentry_string_cmp(const unsigned char *cs, const unsigned char *ct, unsigned tcount)
fs/dcache.c
291
if (*cs != *ct)
fs/dcache.c
294
ct++;
fs/dcache.c
302
static inline int dentry_cmp(const struct dentry *dentry, const unsigned char *ct, unsigned tcount)
fs/dcache.c
322
return dentry_string_cmp(cs, ct, tcount);
fs/f2fs/checkpoint.c
1659
enum cp_time ct;
fs/f2fs/checkpoint.c
1672
for (ct = CP_TIME_START; ct < CP_TIME_MAX - 1; ct++)
fs/f2fs/checkpoint.c
1673
f2fs_warn(sbi, "Step#%d: %llu ms", ct,
fs/f2fs/checkpoint.c
1674
(u64)ktime_ms_delta(cpc->stats.times[ct + 1],
fs/f2fs/checkpoint.c
1675
cpc->stats.times[ct]));
include/dt-bindings/usb/pd.h
463
#define VDO_VPD(hw, fw, ver, vbm, curr, vbi, gi, ct) \
include/dt-bindings/usb/pd.h
466
| ((gi) & 0x3f) << 1 | (ct))
include/linux/alloc_tag.h
102
.ct = CODE_TAG_INIT, \
include/linux/alloc_tag.h
112
.ct = CODE_TAG_INIT, \
include/linux/alloc_tag.h
121
.ct = CODE_TAG_INIT, \
include/linux/alloc_tag.h
155
WARN_ONCE(ref && ref->ct && !is_codetag_empty(ref),
include/linux/alloc_tag.h
157
ref->ct->filename, ref->ct->lineno);
include/linux/alloc_tag.h
164
WARN_ONCE(ref && !ref->ct, "alloc_tag was not set\n");
include/linux/alloc_tag.h
178
ref->ct = &tag->ct;
include/linux/alloc_tag.h
208
if (!ref || !ref->ct)
include/linux/alloc_tag.h
212
ref->ct = NULL;
include/linux/alloc_tag.h
216
tag = ct_to_alloc_tag(ref->ct);
include/linux/alloc_tag.h
221
ref->ct = NULL;
include/linux/alloc_tag.h
226
tag->ct.flags |= CODETAG_FLAG_INACCURATE;
include/linux/alloc_tag.h
231
return !!(tag->ct.flags & CODETAG_FLAG_INACCURATE);
include/linux/alloc_tag.h
29
struct codetag ct;
include/linux/alloc_tag.h
54
return ref->ct == CODETAG_EMPTY;
include/linux/alloc_tag.h
60
ref->ct = CODETAG_EMPTY;
include/linux/alloc_tag.h
70
ref->ct = NULL;
include/linux/alloc_tag.h
80
struct codetag *ct;
include/linux/alloc_tag.h
86
static inline struct alloc_tag *ct_to_alloc_tag(struct codetag *ct)
include/linux/alloc_tag.h
88
return container_of(ct, struct alloc_tag, ct);
include/linux/codetag.h
36
struct codetag *ct;
include/linux/codetag.h
59
struct codetag *ct;
include/linux/codetag.h
82
void codetag_to_text(struct seq_buf *out, struct codetag *ct);
include/linux/context_tracking_state.h
103
struct context_tracking *ct = per_cpu_ptr(&context_tracking, cpu);
include/linux/context_tracking_state.h
105
return atomic_read_acquire(&ct->state) & CT_RCU_WATCHING_MASK;
include/linux/context_tracking_state.h
115
struct context_tracking *ct = per_cpu_ptr(&context_tracking, cpu);
include/linux/context_tracking_state.h
117
return ct->nesting;
include/linux/context_tracking_state.h
127
struct context_tracking *ct = per_cpu_ptr(&context_tracking, cpu);
include/linux/context_tracking_state.h
129
return ct->nmi_nesting;
include/linux/context_tracking_state.h
96
struct context_tracking *ct = per_cpu_ptr(&context_tracking, cpu);
include/linux/context_tracking_state.h
98
return atomic_read(&ct->state) & CT_RCU_WATCHING_MASK;
include/linux/mroute_base.h
386
int ct;
include/linux/netfilter.h
385
int (*parse_nat_setup)(struct nf_conn *ct, enum nf_nat_manip_type manip,
include/linux/netfilter.h
388
void (*remove_nat_bysrc)(struct nf_conn *ct);
include/linux/netfilter.h
484
size_t (*build_size)(const struct nf_conn *ct);
include/linux/netfilter.h
485
int (*build)(struct sk_buff *skb, struct nf_conn *ct,
include/linux/netfilter.h
488
int (*parse)(const struct nlattr *attr, struct nf_conn *ct);
include/linux/netfilter.h
489
int (*attach_expect)(const struct nlattr *attr, struct nf_conn *ct,
include/linux/netfilter.h
491
void (*seq_adjust)(struct sk_buff *skb, struct nf_conn *ct,
include/linux/netfilter/nf_conntrack_h323.h
34
int get_h225_addr(struct nf_conn *ct, unsigned char *data,
include/linux/netfilter/nf_conntrack_h323.h
48
struct nf_conn *ct,
include/linux/netfilter/nf_conntrack_h323.h
53
struct nf_conn *ct,
include/linux/netfilter/nf_conntrack_h323.h
58
struct nf_conn *ct,
include/linux/netfilter/nf_conntrack_h323.h
67
struct nf_conn *ct,
include/linux/netfilter/nf_conntrack_h323.h
74
struct nf_conn *ct,
include/linux/netfilter/nf_conntrack_h323.h
81
struct nf_conn *ct,
include/linux/netfilter/nf_conntrack_h323.h
88
struct nf_conn *ct,
include/linux/netfilter/nf_conntrack_pptp.h
305
struct nf_conn *ct, enum ip_conntrack_info ctinfo,
include/linux/netfilter/nf_conntrack_pptp.h
310
struct nf_conn *ct, enum ip_conntrack_info ctinfo,
include/linux/netfilter/nf_conntrack_pptp.h
316
void (*expectfn)(struct nf_conn *ct,
include/linux/netfilter/nf_conntrack_proto_gre.h
22
int nf_ct_gre_keymap_add(struct nf_conn *ct, enum ip_conntrack_dir dir,
include/linux/netfilter/nf_conntrack_proto_gre.h
26
void nf_ct_gre_keymap_destroy(struct nf_conn *ct);
include/linux/netfilter/nf_conntrack_sip.h
169
int ct_sip_parse_request(const struct nf_conn *ct, const char *dptr,
include/linux/netfilter/nf_conntrack_sip.h
173
int ct_sip_get_header(const struct nf_conn *ct, const char *dptr,
include/linux/netfilter/nf_conntrack_sip.h
177
int ct_sip_parse_header_uri(const struct nf_conn *ct, const char *dptr,
include/linux/netfilter/nf_conntrack_sip.h
182
int ct_sip_parse_address_param(const struct nf_conn *ct, const char *dptr,
include/linux/netfilter/nf_conntrack_sip.h
187
int ct_sip_parse_numerical_param(const struct nf_conn *ct, const char *dptr,
include/linux/netfilter/nf_conntrack_sip.h
192
int ct_sip_get_sdp_header(const struct nf_conn *ct, const char *dptr,
include/linux/netfilter/nf_conntrack_sip.h
68
int (*match_len)(const struct nf_conn *ct,
include/linux/netfilter/nf_conntrack_snmp.h
10
struct nf_conn *ct,
include/linux/pgalloc_tag.h
123
ref->ct = tmp->ct;
include/linux/pgalloc_tag.h
162
handle.ref->ct = ref->ct;
include/linux/pgalloc_tag.h
184
if (ref.ct)
include/linux/pgalloc_tag.h
185
tag = ct_to_alloc_tag(ref.ct);
include/linux/pgalloc_tag.h
67
ref->ct = NULL;
include/linux/pgalloc_tag.h
74
ref->ct = idx < kernel_tags.count ?
include/linux/pgalloc_tag.h
75
&kernel_tags.first_tag[idx].ct :
include/linux/pgalloc_tag.h
76
&module_idx_to_tag(idx)->ct;
include/linux/pgalloc_tag.h
85
if (!ref->ct)
include/linux/pgalloc_tag.h
91
tag = ct_to_alloc_tag(ref->ct);
include/linux/usb/pd_vdo.h
496
#define VDO_VPD(hw, fw, ver, vbm, curr, vbi, gi, ct) \
include/linux/usb/pd_vdo.h
499
| ((gi) & 0x3f) << 1 | (ct))
include/linux/vt_kern.h
65
int con_set_unimap(struct vc_data *vc, ushort ct, struct unipair __user *list);
include/linux/vt_kern.h
66
int con_get_unimap(struct vc_data *vc, ushort ct, ushort __user *uct, struct unipair __user *list);
include/linux/vt_kern.h
93
int con_set_unimap(struct vc_data *vc, ushort ct, struct unipair __user *list)
include/linux/vt_kern.h
98
int con_get_unimap(struct vc_data *vc, ushort ct, ushort __user *uct,
include/net/flow_offload.h
298
} ct;
include/net/ip_vs.h
1376
int ip_vs_check_template(struct ip_vs_conn *ct, struct ip_vs_dest *cdest);
include/net/ip_vs.h
1445
struct ip_vs_conn *ct = cp->control;
include/net/ip_vs.h
1447
if (ct && !(ct->state & IP_VS_CTPL_S_ASSURED) &&
include/net/ip_vs.h
1448
(ct->flags & IP_VS_CONN_F_TEMPLATE))
include/net/ip_vs.h
1449
ct->state |= IP_VS_CTPL_S_ASSURED;
include/net/ip_vs.h
1759
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
include/net/ip_vs.h
1761
if (ct) {
include/net/ip_vs.h
1762
nf_conntrack_put(&ct->ct_general);
include/net/ip_vs.h
1784
void ip_vs_nfct_expect_related(struct sk_buff *skb, struct nf_conn *ct,
include/net/ip_vs.h
1817
struct nf_conn *ct;
include/net/ip_vs.h
1819
ct = nf_ct_get(skb, &ctinfo);
include/net/ip_vs.h
1820
if (ct && nf_ct_is_confirmed(ct))
include/net/ip_vs.h
793
struct ip_vs_conn *ct);
include/net/net_namespace.h
151
struct netns_ct ct;
include/net/netfilter/nf_conntrack.h
140
static inline u_int16_t nf_ct_l3num(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack.h
142
return ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.l3num;
include/net/netfilter/nf_conntrack.h
145
static inline u_int8_t nf_ct_protonum(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack.h
147
return ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.dst.protonum;
include/net/netfilter/nf_conntrack.h
150
#define nf_ct_tuple(ct, dir) (&(ct)->tuplehash[dir].tuple)
include/net/netfilter/nf_conntrack.h
157
static inline struct net *nf_ct_net(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack.h
159
return read_pnet(&ct->ct_net);
include/net/netfilter/nf_conntrack.h
179
void nf_conntrack_tcp_set_closing(struct nf_conn *ct);
include/net/netfilter/nf_conntrack.h
182
static inline void nf_ct_put(struct nf_conn *ct)
include/net/netfilter/nf_conntrack.h
184
if (ct && refcount_dec_and_test(&ct->ct_general.use))
include/net/netfilter/nf_conntrack.h
185
nf_ct_destroy(&ct->ct_general);
include/net/netfilter/nf_conntrack.h
198
int nf_conntrack_hash_check_insert(struct nf_conn *ct);
include/net/netfilter/nf_conntrack.h
199
bool nf_ct_delete(struct nf_conn *ct, u32 pid, int report);
include/net/netfilter/nf_conntrack.h
205
void __nf_ct_refresh_acct(struct nf_conn *ct, enum ip_conntrack_info ctinfo,
include/net/netfilter/nf_conntrack.h
209
static inline void nf_ct_refresh_acct(struct nf_conn *ct,
include/net/netfilter/nf_conntrack.h
214
__nf_ct_refresh_acct(ct, ctinfo, extra_jiffies, skb->len);
include/net/netfilter/nf_conntrack.h
218
static inline void nf_ct_refresh(struct nf_conn *ct,
include/net/netfilter/nf_conntrack.h
221
__nf_ct_refresh_acct(ct, 0, extra_jiffies, 0);
include/net/netfilter/nf_conntrack.h
225
bool nf_ct_kill_acct(struct nf_conn *ct, enum ip_conntrack_info ctinfo,
include/net/netfilter/nf_conntrack.h
229
static inline bool nf_ct_kill(struct nf_conn *ct)
include/net/netfilter/nf_conntrack.h
231
return nf_ct_delete(ct, 0, 0);
include/net/netfilter/nf_conntrack.h
251
void nf_conntrack_free(struct nf_conn *ct);
include/net/netfilter/nf_conntrack.h
258
static inline int nf_ct_is_template(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack.h
260
return test_bit(IPS_TEMPLATE_BIT, &ct->status);
include/net/netfilter/nf_conntrack.h
264
static inline int nf_ct_is_confirmed(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack.h
266
return test_bit(IPS_CONFIRMED_BIT, &ct->status);
include/net/netfilter/nf_conntrack.h
269
static inline int nf_ct_is_dying(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack.h
271
return test_bit(IPS_DYING_BIT, &ct->status);
include/net/netfilter/nf_conntrack.h
280
static inline void nf_conntrack_alter_reply(struct nf_conn *ct,
include/net/netfilter/nf_conntrack.h
284
if (WARN_ON(nf_ct_is_confirmed(ct)))
include/net/netfilter/nf_conntrack.h
287
ct->tuplehash[IP_CT_DIR_REPLY].tuple = *newreply;
include/net/netfilter/nf_conntrack.h
293
static inline unsigned long nf_ct_expires(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack.h
295
s32 timeout = READ_ONCE(ct->timeout) - nfct_time_stamp;
include/net/netfilter/nf_conntrack.h
300
static inline bool nf_ct_is_expired(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack.h
302
return (__s32)(READ_ONCE(ct->timeout) - nfct_time_stamp) <= 0;
include/net/netfilter/nf_conntrack.h
306
static inline bool nf_ct_should_gc(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack.h
308
if (!nf_ct_is_confirmed(ct))
include/net/netfilter/nf_conntrack.h
320
return nf_ct_is_expired(ct) && !nf_ct_is_dying(ct);
include/net/netfilter/nf_conntrack.h
357
u32 nf_ct_get_id(const struct nf_conn *ct);
include/net/netfilter/nf_conntrack.h
361
nf_ct_set(struct sk_buff *skb, struct nf_conn *ct, enum ip_conntrack_info info)
include/net/netfilter/nf_conntrack.h
363
skb_set_nfct(skb, (unsigned long)ct | info);
include/net/netfilter/nf_conntrack.h
377
#define NF_CT_STAT_INC(net, count) __this_cpu_inc((net)->ct.stat->count)
include/net/netfilter/nf_conntrack.h
378
#define NF_CT_STAT_INC_ATOMIC(net, count) this_cpu_inc((net)->ct.stat->count)
include/net/netfilter/nf_conntrack.h
379
#define NF_CT_STAT_ADD_ATOMIC(net, count, v) this_cpu_add((net)->ct.stat->count, (v))
include/net/netfilter/nf_conntrack_acct.h
24
struct nf_conn_acct *nf_conn_acct_find(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_acct.h
26
return nf_ct_ext_find(ct, NF_CT_EXT_ACCT);
include/net/netfilter/nf_conntrack_acct.h
30
struct nf_conn_acct *nf_ct_acct_ext_add(struct nf_conn *ct, gfp_t gfp)
include/net/netfilter/nf_conntrack_acct.h
33
struct net *net = nf_ct_net(ct);
include/net/netfilter/nf_conntrack_acct.h
36
if (!net->ct.sysctl_acct)
include/net/netfilter/nf_conntrack_acct.h
39
acct = nf_ct_ext_add(ct, NF_CT_EXT_ACCT, gfp);
include/net/netfilter/nf_conntrack_acct.h
54
return net->ct.sysctl_acct != 0;
include/net/netfilter/nf_conntrack_acct.h
64
net->ct.sysctl_acct = enable;
include/net/netfilter/nf_conntrack_acct.h
68
void nf_ct_acct_add(struct nf_conn *ct, u32 dir, unsigned int packets,
include/net/netfilter/nf_conntrack_acct.h
71
static inline void nf_ct_acct_update(struct nf_conn *ct, u32 dir,
include/net/netfilter/nf_conntrack_acct.h
75
nf_ct_acct_add(ct, dir, 1, bytes);
include/net/netfilter/nf_conntrack_act_ct.h
14
static inline struct nf_conn_act_ct_ext *nf_conn_act_ct_ext_find(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_act_ct.h
17
return nf_ct_ext_find(ct, NF_CT_EXT_ACT_CT);
include/net/netfilter/nf_conntrack_act_ct.h
23
static inline void nf_conn_act_ct_ext_fill(struct sk_buff *skb, struct nf_conn *ct,
include/net/netfilter/nf_conntrack_act_ct.h
29
act_ct_ext = nf_conn_act_ct_ext_find(ct);
include/net/netfilter/nf_conntrack_act_ct.h
37
struct nf_conn *ct,
include/net/netfilter/nf_conntrack_act_ct.h
41
struct nf_conn_act_ct_ext *act_ct = nf_ct_ext_find(ct, NF_CT_EXT_ACT_CT);
include/net/netfilter/nf_conntrack_act_ct.h
46
act_ct = nf_ct_ext_add(ct, NF_CT_EXT_ACT_CT, GFP_ATOMIC);
include/net/netfilter/nf_conntrack_act_ct.h
47
nf_conn_act_ct_ext_fill(skb, ct, ctinfo);
include/net/netfilter/nf_conntrack_bpf.h
10
struct nf_conn ct;
include/net/netfilter/nf_conntrack_core.h
101
ct->timeout = (u32)timeout;
include/net/netfilter/nf_conntrack_core.h
104
int __nf_ct_change_timeout(struct nf_conn *ct, u64 cta_timeout);
include/net/netfilter/nf_conntrack_core.h
105
void __nf_ct_change_status(struct nf_conn *ct, unsigned long on, unsigned long off);
include/net/netfilter/nf_conntrack_core.h
106
int nf_ct_change_status_common(struct nf_conn *ct, unsigned int status);
include/net/netfilter/nf_conntrack_core.h
57
struct nf_conn *ct = (struct nf_conn *)skb_nfct(skb);
include/net/netfilter/nf_conntrack_core.h
60
if (ct) {
include/net/netfilter/nf_conntrack_core.h
61
if (!nf_ct_is_confirmed(ct)) {
include/net/netfilter/nf_conntrack_core.h
65
ct = (struct nf_conn *)skb_nfct(skb);
include/net/netfilter/nf_conntrack_core.h
68
if (ret == NF_ACCEPT && nf_ct_ecache_exist(ct))
include/net/netfilter/nf_conntrack_core.h
69
nf_ct_deliver_cached_events(ct);
include/net/netfilter/nf_conntrack_core.h
93
static inline void __nf_ct_set_timeout(struct nf_conn *ct, u64 timeout)
include/net/netfilter/nf_conntrack_core.h
98
if (nf_ct_is_confirmed(ct))
include/net/netfilter/nf_conntrack_core.h
99
WRITE_ONCE(ct->timeout, nfct_time_stamp + (u32)timeout);
include/net/netfilter/nf_conntrack_ecache.h
102
nf_conntrack_event_cache(enum ip_conntrack_events event, struct nf_conn *ct)
include/net/netfilter/nf_conntrack_ecache.h
105
struct net *net = nf_ct_net(ct);
include/net/netfilter/nf_conntrack_ecache.h
108
if (!rcu_access_pointer(net->ct.nf_conntrack_event_cb))
include/net/netfilter/nf_conntrack_ecache.h
111
e = nf_ct_ecache_find(ct);
include/net/netfilter/nf_conntrack_ecache.h
128
nf_conntrack_event_report(enum ip_conntrack_events event, struct nf_conn *ct,
include/net/netfilter/nf_conntrack_ecache.h
132
if (nf_ct_ecache_exist(ct))
include/net/netfilter/nf_conntrack_ecache.h
133
return nf_conntrack_eventmask_report(1 << event, ct, portid, report);
include/net/netfilter/nf_conntrack_ecache.h
139
nf_conntrack_event(enum ip_conntrack_events event, struct nf_conn *ct)
include/net/netfilter/nf_conntrack_ecache.h
142
if (nf_ct_ecache_exist(ct))
include/net/netfilter/nf_conntrack_ecache.h
143
return nf_conntrack_eventmask_report(1 << event, ct, 0, 0);
include/net/netfilter/nf_conntrack_ecache.h
162
return net->ct.ecache_dwork_pending;
include/net/netfilter/nf_conntrack_ecache.h
34
nf_ct_ecache_find(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_ecache.h
37
return nf_ct_ext_find(ct, NF_CT_EXT_ECACHE);
include/net/netfilter/nf_conntrack_ecache.h
43
static inline bool nf_ct_ecache_exist(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_ecache.h
46
return nf_ct_ext_exist(ct, NF_CT_EXT_ECACHE);
include/net/netfilter/nf_conntrack_ecache.h
56
struct nf_conn *ct;
include/net/netfilter/nf_conntrack_ecache.h
76
void nf_ct_deliver_cached_events(struct nf_conn *ct);
include/net/netfilter/nf_conntrack_ecache.h
77
int nf_conntrack_eventmask_report(unsigned int eventmask, struct nf_conn *ct,
include/net/netfilter/nf_conntrack_ecache.h
80
bool nf_ct_ecache_ext_add(struct nf_conn *ct, u16 ctmask, u16 expmask, gfp_t gfp);
include/net/netfilter/nf_conntrack_ecache.h
83
static inline void nf_ct_deliver_cached_events(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_ecache.h
88
struct nf_conn *ct,
include/net/netfilter/nf_conntrack_ecache.h
95
static inline bool nf_ct_ecache_ext_add(struct nf_conn *ct, u16 ctmask, u16 expmask, gfp_t gfp)
include/net/netfilter/nf_conntrack_expect.h
128
void nf_ct_remove_expectations(struct nf_conn *ct);
include/net/netfilter/nf_conntrack_extend.h
50
static inline bool nf_ct_ext_exist(const struct nf_conn *ct, u8 id)
include/net/netfilter/nf_conntrack_extend.h
52
return (ct->ext && __nf_ct_ext_exist(ct->ext, id));
include/net/netfilter/nf_conntrack_extend.h
57
static inline void *nf_ct_ext_find(const struct nf_conn *ct, u8 id)
include/net/netfilter/nf_conntrack_extend.h
59
struct nf_ct_ext *ext = ct->ext;
include/net/netfilter/nf_conntrack_extend.h
67
return (void *)ct->ext + ct->ext->offset[id];
include/net/netfilter/nf_conntrack_extend.h
71
void *nf_ct_ext_add(struct nf_conn *ct, enum nf_ct_ext_id id, gfp_t gfp);
include/net/netfilter/nf_conntrack_helper.h
100
struct nf_conn *ct,
include/net/netfilter/nf_conntrack_helper.h
103
struct nf_conn *ct),
include/net/netfilter/nf_conntrack_helper.h
113
struct nf_conn_help *nf_ct_helper_ext_add(struct nf_conn *ct, gfp_t gfp);
include/net/netfilter/nf_conntrack_helper.h
115
int __nf_ct_try_assign_helper(struct nf_conn *ct, struct nf_conn *tmpl,
include/net/netfilter/nf_conntrack_helper.h
118
int nf_ct_helper(struct sk_buff *skb, struct nf_conn *ct,
include/net/netfilter/nf_conntrack_helper.h
120
int nf_ct_add_helper(struct nf_conn *ct, const char *name, u8 family,
include/net/netfilter/nf_conntrack_helper.h
123
void nf_ct_helper_destroy(struct nf_conn *ct);
include/net/netfilter/nf_conntrack_helper.h
125
static inline struct nf_conn_help *nfct_help(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_helper.h
127
return nf_ct_ext_find(ct, NF_CT_EXT_HELPER);
include/net/netfilter/nf_conntrack_helper.h
130
static inline void *nfct_help_data(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_helper.h
134
help = nf_ct_ext_find(ct, NF_CT_EXT_HELPER);
include/net/netfilter/nf_conntrack_helper.h
142
int nf_conntrack_broadcast_help(struct sk_buff *skb, struct nf_conn *ct,
include/net/netfilter/nf_conntrack_helper.h
149
void (*expectfn)(struct nf_conn *ct, struct nf_conntrack_expect *exp);
include/net/netfilter/nf_conntrack_helper.h
153
void nf_ct_helper_log(struct sk_buff *skb, const struct nf_conn *ct,
include/net/netfilter/nf_conntrack_helper.h
47
struct nf_conn *ct,
include/net/netfilter/nf_conntrack_helper.h
50
void (*destroy)(struct nf_conn *ct);
include/net/netfilter/nf_conntrack_helper.h
52
int (*from_nlattr)(struct nlattr *attr, struct nf_conn *ct);
include/net/netfilter/nf_conntrack_helper.h
53
int (*to_nlattr)(struct sk_buff *skb, const struct nf_conn *ct);
include/net/netfilter/nf_conntrack_l4proto.h
100
int nf_conntrack_icmpv6_packet(struct nf_conn *ct,
include/net/netfilter/nf_conntrack_l4proto.h
105
int nf_conntrack_udp_packet(struct nf_conn *ct,
include/net/netfilter/nf_conntrack_l4proto.h
110
int nf_conntrack_udplite_packet(struct nf_conn *ct,
include/net/netfilter/nf_conntrack_l4proto.h
115
int nf_conntrack_tcp_packet(struct nf_conn *ct,
include/net/netfilter/nf_conntrack_l4proto.h
120
int nf_conntrack_sctp_packet(struct nf_conn *ct,
include/net/netfilter/nf_conntrack_l4proto.h
125
int nf_conntrack_gre_packet(struct nf_conn *ct,
include/net/netfilter/nf_conntrack_l4proto.h
158
const struct nf_conn *ct,
include/net/netfilter/nf_conntrack_l4proto.h
174
const struct nf_conn *ct,
include/net/netfilter/nf_conntrack_l4proto.h
182
return &net->ct.nf_ct_proto.generic;
include/net/netfilter/nf_conntrack_l4proto.h
187
return &net->ct.nf_ct_proto.tcp;
include/net/netfilter/nf_conntrack_l4proto.h
192
return &net->ct.nf_ct_proto.udp;
include/net/netfilter/nf_conntrack_l4proto.h
197
return &net->ct.nf_ct_proto.icmp;
include/net/netfilter/nf_conntrack_l4proto.h
202
return &net->ct.nf_ct_proto.icmpv6;
include/net/netfilter/nf_conntrack_l4proto.h
206
static inline void nf_ct_set_tcp_be_liberal(struct nf_conn *ct)
include/net/netfilter/nf_conntrack_l4proto.h
208
ct->proto.tcp.seen[0].flags |= IP_CT_TCP_FLAG_BE_LIBERAL;
include/net/netfilter/nf_conntrack_l4proto.h
209
ct->proto.tcp.seen[1].flags |= IP_CT_TCP_FLAG_BE_LIBERAL;
include/net/netfilter/nf_conntrack_l4proto.h
213
static inline bool nf_conntrack_tcp_established(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_l4proto.h
215
return ct->proto.tcp.state == TCP_CONNTRACK_ESTABLISHED &&
include/net/netfilter/nf_conntrack_l4proto.h
216
test_bit(IPS_ASSURED_BIT, &ct->status);
include/net/netfilter/nf_conntrack_l4proto.h
223
return &net->ct.nf_ct_proto.sctp;
include/net/netfilter/nf_conntrack_l4proto.h
230
return &net->ct.nf_ct_proto.gre;
include/net/netfilter/nf_conntrack_l4proto.h
31
bool (*can_early_drop)(const struct nf_conn *ct);
include/net/netfilter/nf_conntrack_l4proto.h
35
struct nf_conn *ct, bool destroy);
include/net/netfilter/nf_conntrack_l4proto.h
38
int (*from_nlattr)(struct nlattr *tb[], struct nf_conn *ct);
include/net/netfilter/nf_conntrack_l4proto.h
95
int nf_conntrack_icmp_packet(struct nf_conn *ct,
include/net/netfilter/nf_conntrack_labels.h
23
static inline struct nf_conn_labels *nf_ct_labels_find(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_labels.h
26
struct nf_ct_ext *ext = ct->ext;
include/net/netfilter/nf_conntrack_labels.h
31
return (void *)ct->ext + ct->ext->offset[NF_CT_EXT_LABELS];
include/net/netfilter/nf_conntrack_labels.h
37
static inline struct nf_conn_labels *nf_ct_labels_ext_add(struct nf_conn *ct)
include/net/netfilter/nf_conntrack_labels.h
40
struct net *net = nf_ct_net(ct);
include/net/netfilter/nf_conntrack_labels.h
42
if (atomic_read(&net->ct.labels_used) == 0)
include/net/netfilter/nf_conntrack_labels.h
45
return nf_ct_ext_add(ct, NF_CT_EXT_LABELS, GFP_ATOMIC);
include/net/netfilter/nf_conntrack_labels.h
51
int nf_connlabels_replace(struct nf_conn *ct,
include/net/netfilter/nf_conntrack_seqadj.h
24
static inline struct nf_conn_seqadj *nfct_seqadj(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_seqadj.h
26
return nf_ct_ext_find(ct, NF_CT_EXT_SEQADJ);
include/net/netfilter/nf_conntrack_seqadj.h
29
static inline struct nf_conn_seqadj *nfct_seqadj_ext_add(struct nf_conn *ct)
include/net/netfilter/nf_conntrack_seqadj.h
31
return nf_ct_ext_add(ct, NF_CT_EXT_SEQADJ, GFP_ATOMIC);
include/net/netfilter/nf_conntrack_seqadj.h
34
int nf_ct_seqadj_init(struct nf_conn *ct, enum ip_conntrack_info ctinfo,
include/net/netfilter/nf_conntrack_seqadj.h
36
int nf_ct_seqadj_set(struct nf_conn *ct, enum ip_conntrack_info ctinfo,
include/net/netfilter/nf_conntrack_seqadj.h
38
void nf_ct_tcp_seqadj_set(struct sk_buff *skb, struct nf_conn *ct,
include/net/netfilter/nf_conntrack_seqadj.h
41
int nf_ct_seq_adjust(struct sk_buff *skb, struct nf_conn *ct,
include/net/netfilter/nf_conntrack_seqadj.h
43
s32 nf_ct_seq_offset(const struct nf_conn *ct, enum ip_conntrack_dir, u32 seq);
include/net/netfilter/nf_conntrack_synproxy.h
14
static inline struct nf_conn_synproxy *nfct_synproxy(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_synproxy.h
17
return nf_ct_ext_find(ct, NF_CT_EXT_SYNPROXY);
include/net/netfilter/nf_conntrack_synproxy.h
23
static inline struct nf_conn_synproxy *nfct_synproxy_ext_add(struct nf_conn *ct)
include/net/netfilter/nf_conntrack_synproxy.h
26
return nf_ct_ext_add(ct, NF_CT_EXT_SYNPROXY, GFP_ATOMIC);
include/net/netfilter/nf_conntrack_synproxy.h
32
static inline bool nf_ct_add_synproxy(struct nf_conn *ct,
include/net/netfilter/nf_conntrack_synproxy.h
37
if (!nfct_seqadj_ext_add(ct))
include/net/netfilter/nf_conntrack_synproxy.h
40
if (!nfct_synproxy_ext_add(ct))
include/net/netfilter/nf_conntrack_timeout.h
42
struct nf_conn_timeout *nf_ct_timeout_find(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_timeout.h
45
return nf_ct_ext_find(ct, NF_CT_EXT_TIMEOUT);
include/net/netfilter/nf_conntrack_timeout.h
52
struct nf_conn_timeout *nf_ct_timeout_ext_add(struct nf_conn *ct,
include/net/netfilter/nf_conntrack_timeout.h
59
timeout_ext = nf_ct_ext_add(ct, NF_CT_EXT_TIMEOUT, gfp);
include/net/netfilter/nf_conntrack_timeout.h
71
static inline unsigned int *nf_ct_timeout_lookup(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_timeout.h
77
timeout_ext = nf_ct_timeout_find(ct);
include/net/netfilter/nf_conntrack_timeout.h
86
int nf_ct_set_timeout(struct net *net, struct nf_conn *ct, u8 l3num, u8 l4num,
include/net/netfilter/nf_conntrack_timeout.h
88
void nf_ct_destroy_timeout(struct nf_conn *ct);
include/net/netfilter/nf_conntrack_timeout.h
90
static inline int nf_ct_set_timeout(struct net *net, struct nf_conn *ct,
include/net/netfilter/nf_conntrack_timeout.h
97
static inline void nf_ct_destroy_timeout(struct nf_conn *ct)
include/net/netfilter/nf_conntrack_timestamp.h
17
struct nf_conn_tstamp *nf_conn_tstamp_find(const struct nf_conn *ct)
include/net/netfilter/nf_conntrack_timestamp.h
20
return nf_ct_ext_find(ct, NF_CT_EXT_TSTAMP);
include/net/netfilter/nf_conntrack_timestamp.h
27
struct nf_conn_tstamp *nf_ct_tstamp_ext_add(struct nf_conn *ct, gfp_t gfp)
include/net/netfilter/nf_conntrack_timestamp.h
30
struct net *net = nf_ct_net(ct);
include/net/netfilter/nf_conntrack_timestamp.h
32
if (!net->ct.sysctl_tstamp)
include/net/netfilter/nf_conntrack_timestamp.h
35
return nf_ct_ext_add(ct, NF_CT_EXT_TSTAMP, gfp);
include/net/netfilter/nf_conntrack_zones.h
12
return &ct->zone;
include/net/netfilter/nf_conntrack_zones.h
42
static inline void nf_ct_zone_add(struct nf_conn *ct,
include/net/netfilter/nf_conntrack_zones.h
46
ct->zone = *zone;
include/net/netfilter/nf_conntrack_zones.h
9
nf_ct_zone(const struct nf_conn *ct)
include/net/netfilter/nf_flow_table.h
199
struct nf_conn *ct;
include/net/netfilter/nf_flow_table.h
240
struct flow_offload *flow_offload_alloc(struct nf_conn *ct);
include/net/netfilter/nf_flow_table.h
245
int nft_flow_route(const struct nft_pktinfo *pkt, const struct nf_conn *ct,
include/net/netfilter/nf_nat.h
107
int nf_ct_nat(struct sk_buff *skb, struct nf_conn *ct,
include/net/netfilter/nf_nat.h
111
static inline int nf_nat_initialized(const struct nf_conn *ct,
include/net/netfilter/nf_nat.h
115
return ct->status & IPS_SRC_NAT_DONE;
include/net/netfilter/nf_nat.h
117
return ct->status & IPS_DST_NAT_DONE;
include/net/netfilter/nf_nat.h
39
unsigned int nf_nat_setup_info(struct nf_conn *ct,
include/net/netfilter/nf_nat.h
43
extern unsigned int nf_nat_alloc_null_binding(struct nf_conn *ct,
include/net/netfilter/nf_nat.h
46
struct nf_conn_nat *nf_ct_nat_ext_add(struct nf_conn *ct);
include/net/netfilter/nf_nat.h
48
static inline struct nf_conn_nat *nfct_nat(const struct nf_conn *ct)
include/net/netfilter/nf_nat.h
51
return nf_ct_ext_find(ct, NF_CT_EXT_NAT);
include/net/netfilter/nf_nat.h
76
unsigned int nf_nat_packet(struct nf_conn *ct, enum ip_conntrack_info ctinfo,
include/net/netfilter/nf_nat.h
79
unsigned int nf_nat_manip_pkt(struct sk_buff *skb, struct nf_conn *ct,
include/net/netfilter/nf_nat.h
86
int nf_nat_icmp_reply_translation(struct sk_buff *skb, struct nf_conn *ct,
include/net/netfilter/nf_nat.h
90
int nf_nat_icmpv6_reply_translation(struct sk_buff *skb, struct nf_conn *ct,
include/net/netfilter/nf_nat_helper.h
11
bool __nf_nat_mangle_tcp_packet(struct sk_buff *skb, struct nf_conn *ct,
include/net/netfilter/nf_nat_helper.h
18
struct nf_conn *ct,
include/net/netfilter/nf_nat_helper.h
26
return __nf_nat_mangle_tcp_packet(skb, ct, ctinfo, protoff,
include/net/netfilter/nf_nat_helper.h
31
bool nf_nat_mangle_udp_packet(struct sk_buff *skb, struct nf_conn *ct,
include/net/netfilter/nf_nat_helper.h
39
void nf_nat_follow_master(struct nf_conn *ct, struct nf_conntrack_expect *this);
include/net/tc_act/tc_ct.h
84
struct nf_conn *ct;
include/net/tc_act/tc_ct.h
86
ct = (struct nf_conn *)(cookie & NFCT_PTRMASK);
include/net/tc_act/tc_ct.h
87
nf_conntrack_get(&ct->ct_general);
include/net/tc_act/tc_ct.h
88
nf_ct_set(skb, ct, ctinfo);
include/uapi/linux/netfilter/xt_CT.h
27
struct nf_conn *ct __attribute__((aligned(8)));
include/uapi/linux/netfilter/xt_CT.h
39
struct nf_conn *ct __attribute__((aligned(8)));
kernel/context_tracking.c
105
struct context_tracking *ct = this_cpu_ptr(&context_tracking);
kernel/context_tracking.c
108
WRITE_ONCE(ct->nmi_nesting, 0);
kernel/context_tracking.c
113
ct->nesting--;
kernel/context_tracking.c
124
instrument_atomic_write(&ct->state, sizeof(ct->state));
kernel/context_tracking.c
127
WRITE_ONCE(ct->nesting, 0); /* Avoid irq-access tearing. */
kernel/context_tracking.c
144
struct context_tracking *ct = this_cpu_ptr(&context_tracking);
kernel/context_tracking.c
152
ct->nesting++;
kernel/context_tracking.c
162
instrument_atomic_write(&ct->state, sizeof(ct->state));
kernel/context_tracking.c
166
WRITE_ONCE(ct->nesting, 1);
kernel/context_tracking.c
168
WRITE_ONCE(ct->nmi_nesting, CT_NESTING_IRQ_NONIDLE);
kernel/context_tracking.c
185
struct context_tracking *ct = this_cpu_ptr(&context_tracking);
kernel/context_tracking.c
203
WRITE_ONCE(ct->nmi_nesting, /* No store tearing. */
kernel/context_tracking.c
211
WRITE_ONCE(ct->nmi_nesting, 0); /* Avoid store tearing. */
kernel/context_tracking.c
214
instrument_atomic_write(&ct->state, sizeof(ct->state));
kernel/context_tracking.c
240
struct context_tracking *ct = this_cpu_ptr(&context_tracking);
kernel/context_tracking.c
264
instrument_atomic_read(&ct->state, sizeof(ct->state));
kernel/context_tracking.c
266
instrument_atomic_write(&ct->state, sizeof(ct->state));
kernel/context_tracking.c
280
WRITE_ONCE(ct->nmi_nesting, /* Prevent store tearing. */
kernel/context_tracking.c
449
struct context_tracking *ct = this_cpu_ptr(&context_tracking);
kernel/context_tracking.c
459
if (ct->active) {
kernel/context_tracking.c
494
raw_atomic_set(&ct->state, state);
kernel/context_tracking.c
511
raw_atomic_set(&ct->state, state);
kernel/context_tracking.c
519
raw_atomic_add(state, &ct->state);
kernel/context_tracking.c
591
struct context_tracking *ct = this_cpu_ptr(&context_tracking);
kernel/context_tracking.c
597
if (ct->active) {
kernel/context_tracking.c
616
raw_atomic_set(&ct->state, CT_STATE_KERNEL);
kernel/context_tracking.c
621
raw_atomic_set(&ct->state, CT_STATE_KERNEL);
kernel/context_tracking.c
629
raw_atomic_sub(state, &ct->state);
kernel/irq/generic-chip.c
101
irq_reg_writel(gc, mask, ct->regs.enable);
kernel/irq/generic-chip.c
102
*ct->mask_cache |= mask;
kernel/irq/generic-chip.c
113
struct irq_chip_type *ct = irq_data_get_chip_type(d);
kernel/irq/generic-chip.c
117
irq_reg_writel(gc, mask, ct->regs.ack);
kernel/irq/generic-chip.c
128
struct irq_chip_type *ct = irq_data_get_chip_type(d);
kernel/irq/generic-chip.c
132
irq_reg_writel(gc, mask, ct->regs.ack);
kernel/irq/generic-chip.c
150
struct irq_chip_type *ct = irq_data_get_chip_type(d);
kernel/irq/generic-chip.c
154
irq_reg_writel(gc, mask, ct->regs.disable);
kernel/irq/generic-chip.c
155
*ct->mask_cache &= ~mask;
kernel/irq/generic-chip.c
156
irq_reg_writel(gc, mask, ct->regs.ack);
kernel/irq/generic-chip.c
167
struct irq_chip_type *ct = irq_data_get_chip_type(d);
kernel/irq/generic-chip.c
171
irq_reg_writel(gc, mask, ct->regs.eoi);
kernel/irq/generic-chip.c
214
struct irq_chip_type *ct = gc->chip_types;
kernel/irq/generic-chip.c
222
ct[i].chip.name = name;
kernel/irq/generic-chip.c
255
struct irq_chip_type *ct = gc->chip_types;
kernel/irq/generic-chip.c
256
u32 *mskptr = &gc->mask_cache, mskreg = ct->regs.mask;
kernel/irq/generic-chip.c
261
mskptr = &ct[i].mask_cache_priv;
kernel/irq/generic-chip.c
262
mskreg = ct[i].regs.mask;
kernel/irq/generic-chip.c
264
ct[i].mask_cache = mskptr;
kernel/irq/generic-chip.c
40
struct irq_chip_type *ct = irq_data_get_chip_type(d);
kernel/irq/generic-chip.c
44
irq_reg_writel(gc, mask, ct->regs.disable);
kernel/irq/generic-chip.c
449
struct irq_chip_type *ct;
kernel/irq/generic-chip.c
45
*ct->mask_cache &= ~mask;
kernel/irq/generic-chip.c
465
ct = gc->chip_types;
kernel/irq/generic-chip.c
466
chip = &ct->chip;
kernel/irq/generic-chip.c
486
irq_domain_set_info(d, virq, hw_irq, chip, gc, ct->handler, NULL, NULL);
kernel/irq/generic-chip.c
534
struct irq_chip_type *ct = gc->chip_types;
kernel/irq/generic-chip.c
535
struct irq_chip *chip = &ct->chip;
kernel/irq/generic-chip.c
559
irq_set_chip_and_handler(i, chip, ct->handler);
kernel/irq/generic-chip.c
577
struct irq_chip_type *ct = gc->chip_types;
kernel/irq/generic-chip.c
580
for (i = 0; i < gc->num_ct; i++, ct++) {
kernel/irq/generic-chip.c
581
if (ct->type & type) {
kernel/irq/generic-chip.c
582
d->chip = &ct->chip;
kernel/irq/generic-chip.c
583
irq_data_to_desc(d)->handle_irq = ct->handler;
kernel/irq/generic-chip.c
59
struct irq_chip_type *ct = irq_data_get_chip_type(d);
kernel/irq/generic-chip.c
63
*ct->mask_cache |= mask;
kernel/irq/generic-chip.c
64
irq_reg_writel(gc, *ct->mask_cache, ct->regs.mask);
kernel/irq/generic-chip.c
658
struct irq_chip_type *ct = gc->chip_types;
kernel/irq/generic-chip.c
660
if (ct->chip.irq_suspend) {
kernel/irq/generic-chip.c
664
ct->chip.irq_suspend(data);
kernel/irq/generic-chip.c
678
struct irq_chip_type *ct = gc->chip_types;
kernel/irq/generic-chip.c
683
if (ct->chip.irq_resume) {
kernel/irq/generic-chip.c
687
ct->chip.irq_resume(data);
kernel/irq/generic-chip.c
701
struct irq_chip_type *ct = gc->chip_types;
kernel/irq/generic-chip.c
703
if (ct->chip.irq_pm_shutdown) {
kernel/irq/generic-chip.c
707
ct->chip.irq_pm_shutdown(data);
kernel/irq/generic-chip.c
78
struct irq_chip_type *ct = irq_data_get_chip_type(d);
kernel/irq/generic-chip.c
82
*ct->mask_cache &= ~mask;
kernel/irq/generic-chip.c
83
irq_reg_writel(gc, *ct->mask_cache, ct->regs.mask);
kernel/irq/generic-chip.c
97
struct irq_chip_type *ct = irq_data_get_chip_type(d);
kernel/rcu/tree.c
4143
struct context_tracking *ct = this_cpu_ptr(&context_tracking);
kernel/rcu/tree.c
4149
WARN_ON_ONCE(ct->nesting != 1);
kernel/rcu/tree.c
4243
struct context_tracking *ct = per_cpu_ptr(&context_tracking, cpu);
kernel/rcu/tree.c
4252
ct->nesting = 1; /* CPU not up, no tearing. */
kernel/time/posix-cpu-timers.c
328
struct task_cputime ct;
kernel/time/posix-cpu-timers.c
330
thread_group_cputime(tsk, &ct);
kernel/time/posix-cpu-timers.c
331
store_samples(samples, ct.stime, ct.utime, ct.sum_exec_runtime);
lib/alloc_tag.c
114
alloc_tag_to_text(&buf, priv->iter.ct);
lib/alloc_tag.c
129
struct codetag *ct;
lib/alloc_tag.c
142
while ((ct = codetag_next_ct(&iter))) {
lib/alloc_tag.c
143
struct alloc_tag_counters counter = alloc_tag_read(ct_to_alloc_tag(ct));
lib/alloc_tag.c
145
n.ct = ct;
lib/alloc_tag.c
595
tag->ct.filename, tag->ct.lineno, tag->ct.modname,
lib/alloc_tag.c
596
tag->ct.function, counter.bytes);
lib/alloc_tag.c
61
return priv->iter.ct ? priv : NULL;
lib/alloc_tag.c
67
struct codetag *ct = codetag_next_ct(&priv->iter);
lib/alloc_tag.c
70
if (!ct)
lib/alloc_tag.c
88
static void alloc_tag_to_text(struct seq_buf *out, struct codetag *ct)
lib/alloc_tag.c
90
struct alloc_tag *tag = ct_to_alloc_tag(ct);
lib/alloc_tag.c
95
codetag_to_text(out, ct);
lib/codetag.c
105
ct = get_first_module_ct(cmod);
lib/codetag.c
107
ct = get_next_module_ct(iter);
lib/codetag.c
110
if (ct)
lib/codetag.c
116
iter->ct = ct;
lib/codetag.c
117
return ct;
lib/codetag.c
120
void codetag_to_text(struct seq_buf *out, struct codetag *ct)
lib/codetag.c
122
if (ct->modname)
lib/codetag.c
124
ct->filename, ct->lineno,
lib/codetag.c
125
ct->modname, ct->function);
lib/codetag.c
128
ct->filename, ct->lineno, ct->function);
lib/codetag.c
57
.ct = NULL,
lib/codetag.c
73
((char *)iter->ct + iter->cttype->desc.tag_size);
lib/codetag.c
82
struct codetag *ct;
lib/codetag.c
89
ct = NULL;
lib/dynamic_debug.c
1209
int i, j, ct = 0;
lib/dynamic_debug.c
1223
ct++;
lib/dynamic_debug.c
1226
if (ct)
lib/dynamic_debug.c
1227
vpr_info("module:%s attached %d classes\n", dt->mod_name, ct);
lib/dynamic_debug.c
613
int bi, ct;
lib/dynamic_debug.c
624
ct = ddebug_exec_queries(query, NULL);
lib/dynamic_debug.c
625
matches += ct;
lib/dynamic_debug.c
628
ct, map->class_names[bi], *new_bits);
lib/string.c
278
int strcmp(const char *cs, const char *ct)
lib/string.c
284
c2 = *ct++;
lib/string.c
302
int strncmp(const char *cs, const char *ct, size_t count)
lib/string.c
308
c2 = *ct++;
lib/string.c
483
char *strpbrk(const char *cs, const char *ct)
lib/string.c
488
if (strchr(ct, *sc))
lib/string.c
508
char *strsep(char **s, const char *ct)
lib/string.c
516
end = strpbrk(sbegin, ct);
lib/string.c
673
__visible int memcmp(const void *cs, const void *ct, size_t count)
lib/string.c
681
const unsigned long *u2 = ct;
lib/string.c
690
ct = u2;
lib/string.c
693
for (su1 = cs, su2 = ct; 0 < count; ++su1, ++su2, count--)
lib/zstd/common/fse.h
124
FSE_PUBLIC_API size_t FSE_buildCTable(FSE_CTable* ct, const short* normalizedCounter, unsigned maxSymbolValue, unsigned tableLog);
lib/zstd/common/fse.h
131
FSE_PUBLIC_API size_t FSE_compress_usingCTable (void* dst, size_t dstCapacity, const void* src, size_t srcSize, const FSE_CTable* ct);
lib/zstd/common/fse.h
256
size_t FSE_buildCTable_rle (FSE_CTable* ct, unsigned char symbolValue);
lib/zstd/common/fse.h
266
size_t FSE_buildCTable_wksp(FSE_CTable* ct, const short* normalizedCounter, unsigned maxSymbolValue, unsigned tableLog, void* workSpace, size_t wkspSize);
lib/zstd/common/fse.h
299
static void FSE_initCState(FSE_CState_t* CStatePtr, const FSE_CTable* ct);
lib/zstd/common/fse.h
429
MEM_STATIC void FSE_initCState(FSE_CState_t* statePtr, const FSE_CTable* ct)
lib/zstd/common/fse.h
431
const void* ptr = ct;
lib/zstd/common/fse.h
436
statePtr->symbolTT = ct + 1 + (tableLog ? (1<<(tableLog-1)) : 1);
lib/zstd/common/fse.h
444
MEM_STATIC void FSE_initCState2(FSE_CState_t* statePtr, const FSE_CTable* ct, U32 symbol)
lib/zstd/common/fse.h
446
FSE_initCState(statePtr, ct);
lib/zstd/compress/fse_compress.c
529
size_t FSE_buildCTable_rle (FSE_CTable* ct, BYTE symbolValue)
lib/zstd/compress/fse_compress.c
531
void* ptr = ct;
lib/zstd/compress/fse_compress.c
554
const FSE_CTable* ct, const unsigned fast)
lib/zstd/compress/fse_compress.c
571
FSE_initCState2(&CState1, ct, *--ip);
lib/zstd/compress/fse_compress.c
572
FSE_initCState2(&CState2, ct, *--ip);
lib/zstd/compress/fse_compress.c
576
FSE_initCState2(&CState2, ct, *--ip);
lib/zstd/compress/fse_compress.c
577
FSE_initCState2(&CState1, ct, *--ip);
lib/zstd/compress/fse_compress.c
613
const FSE_CTable* ct)
lib/zstd/compress/fse_compress.c
618
return FSE_compress_usingCTable_generic(dst, dstSize, src, srcSize, ct, 1);
lib/zstd/compress/fse_compress.c
620
return FSE_compress_usingCTable_generic(dst, dstSize, src, srcSize, ct, 0);
lib/zstd/compress/fse_compress.c
69
size_t FSE_buildCTable_wksp(FSE_CTable* ct,
lib/zstd/compress/fse_compress.c
75
void* const ptr = ct;
lib/zstd/compress/huf_compress.c
1009
HUF_encodeSymbol(bitC, ip[n - u], ct, 0, 1);
lib/zstd/compress/huf_compress.c
1011
HUF_encodeSymbol(bitC, ip[n - kUnroll], ct, 0, kLastFast);
lib/zstd/compress/huf_compress.c
1021
HUF_encodeSymbol(bitC, ip[n - u], ct, /* idx */ 0, /* fast */ 1);
lib/zstd/compress/huf_compress.c
1023
HUF_encodeSymbol(bitC, ip[n - kUnroll], ct, /* idx */ 0, /* fast */ kLastFast);
lib/zstd/compress/huf_compress.c
1031
HUF_encodeSymbol(bitC, ip[n - kUnroll - u], ct, /* idx */ 1, /* fast */ 1);
lib/zstd/compress/huf_compress.c
1033
HUF_encodeSymbol(bitC, ip[n - kUnroll - kUnroll], ct, /* idx */ 1, /* fast */ kLastFast);
lib/zstd/compress/huf_compress.c
1059
HUF_CElt const* ct = CTable + 1;
lib/zstd/compress/huf_compress.c
1072
HUF_compress1X_usingCTable_internal_body_loop(&bitC, ip, srcSize, ct, /* kUnroll */ MEM_32bits() ? 2 : 4, /* kFast */ 0, /* kLastFast */ 0);
lib/zstd/compress/huf_compress.c
1077
HUF_compress1X_usingCTable_internal_body_loop(&bitC, ip, srcSize, ct, /* kUnroll */ 2, /* kFastFlush */ 1, /* kLastFast */ 0);
lib/zstd/compress/huf_compress.c
1082
HUF_compress1X_usingCTable_internal_body_loop(&bitC, ip, srcSize, ct, /* kUnroll */ 2, /* kFastFlush */ 1, /* kLastFast */ 1);
lib/zstd/compress/huf_compress.c
1086
HUF_compress1X_usingCTable_internal_body_loop(&bitC, ip, srcSize, ct, /* kUnroll */ 3, /* kFastFlush */ 1, /* kLastFast */ 1);
lib/zstd/compress/huf_compress.c
1092
HUF_compress1X_usingCTable_internal_body_loop(&bitC, ip, srcSize, ct, /* kUnroll */ 5, /* kFastFlush */ 1, /* kLastFast */ 0);
lib/zstd/compress/huf_compress.c
1095
HUF_compress1X_usingCTable_internal_body_loop(&bitC, ip, srcSize, ct, /* kUnroll */ 5, /* kFastFlush */ 1, /* kLastFast */ 1);
lib/zstd/compress/huf_compress.c
1098
HUF_compress1X_usingCTable_internal_body_loop(&bitC, ip, srcSize, ct, /* kUnroll */ 6, /* kFastFlush */ 1, /* kLastFast */ 0);
lib/zstd/compress/huf_compress.c
1101
HUF_compress1X_usingCTable_internal_body_loop(&bitC, ip, srcSize, ct, /* kUnroll */ 7, /* kFastFlush */ 1, /* kLastFast */ 0);
lib/zstd/compress/huf_compress.c
1104
HUF_compress1X_usingCTable_internal_body_loop(&bitC, ip, srcSize, ct, /* kUnroll */ 8, /* kFastFlush */ 1, /* kLastFast */ 0);
lib/zstd/compress/huf_compress.c
1108
HUF_compress1X_usingCTable_internal_body_loop(&bitC, ip, srcSize, ct, /* kUnroll */ 9, /* kFastFlush */ 1, /* kLastFast */ 1);
lib/zstd/compress/huf_compress.c
250
HUF_CElt const* const ct = CTable + 1;
lib/zstd/compress/huf_compress.c
269
wksp->huffWeight[n] = wksp->bitsToWeight[HUF_getNbBits(ct[n])];
lib/zstd/compress/huf_compress.c
296
HUF_CElt* const ct = CTable + 1;
lib/zstd/compress/huf_compress.c
321
HUF_setNbBits(ct + n, (BYTE)(tableLog + 1 - w) & -(w != 0));
lib/zstd/compress/huf_compress.c
327
{ U32 n; for (n=0; n<nbSymbols; n++) nbPerRank[HUF_getNbBits(ct[n])]++; }
lib/zstd/compress/huf_compress.c
337
{ U32 n; for (n=0; n<nbSymbols; n++) HUF_setValue(ct + n, valPerRank[HUF_getNbBits(ct[n])]++); }
lib/zstd/compress/huf_compress.c
345
const HUF_CElt* const ct = CTable + 1;
lib/zstd/compress/huf_compress.c
349
return (U32)HUF_getNbBits(ct[symbolValue]);
lib/zstd/compress/huf_compress.c
730
HUF_CElt* const ct = CTable + 1;
lib/zstd/compress/huf_compress.c
746
HUF_setNbBits(ct + huffNode[n].byte, huffNode[n].nbBits); /* push nbBits per symbol, symbol order */
lib/zstd/compress/huf_compress.c
748
HUF_setValue(ct + n, valPerRank[HUF_getNbBits(ct[n])]++); /* assign value within rank, symbol order */
lib/zstd/compress/huf_compress.c
793
HUF_CElt const* ct = CTable + 1;
lib/zstd/compress/huf_compress.c
797
nbBits += HUF_getNbBits(ct[s]) * count[s];
lib/zstd/compress/huf_compress.c
804
HUF_CElt const* ct = CTable + 1;
lib/zstd/compress/huf_compress.c
814
bad |= (count[s] != 0) & (HUF_getNbBits(ct[s]) == 0);
lib/zstd/compress/huf_compress.c
991
const HUF_CElt* ct,
lib/zstd/compress/huf_compress.c
999
HUF_encodeSymbol(bitC, ip[--n], ct, 0, /* fast */ 0);
mm/show_mem.c
439
struct codetag *ct = tags[i].ct;
mm/show_mem.c
440
struct alloc_tag *tag = ct_to_alloc_tag(ct);
mm/show_mem.c
447
if (ct->modname)
mm/show_mem.c
449
bytes, counter.calls, ct->filename,
mm/show_mem.c
450
ct->lineno, ct->modname, ct->function);
mm/show_mem.c
453
bytes, counter.calls, ct->filename,
mm/show_mem.c
454
ct->lineno, ct->function);
mm/slub.c
2064
WARN_ON(ext->ref.ct);
net/appletalk/aarp.c
323
int ct;
net/appletalk/aarp.c
327
for (ct = 0; ct < AARP_HASH_SIZE; ct++) {
net/appletalk/aarp.c
328
__aarp_expire_timer(&resolved[ct]);
net/appletalk/aarp.c
329
__aarp_kick(&unresolved[ct]);
net/appletalk/aarp.c
330
__aarp_expire_timer(&unresolved[ct]);
net/appletalk/aarp.c
331
__aarp_expire_timer(&proxies[ct]);
net/appletalk/aarp.c
345
int ct;
net/appletalk/aarp.c
353
for (ct = 0; ct < AARP_HASH_SIZE; ct++) {
net/appletalk/aarp.c
354
__aarp_expire_device(&resolved[ct], dev);
net/appletalk/aarp.c
355
__aarp_expire_device(&unresolved[ct], dev);
net/appletalk/aarp.c
356
__aarp_expire_device(&proxies[ct], dev);
net/appletalk/aarp.c
379
int ct;
net/appletalk/aarp.c
382
for (ct = 0; ct < AARP_HASH_SIZE; ct++) {
net/appletalk/aarp.c
383
__aarp_expire_all(&resolved[ct]);
net/appletalk/aarp.c
384
__aarp_expire_all(&unresolved[ct]);
net/appletalk/aarp.c
385
__aarp_expire_all(&proxies[ct]);
net/appletalk/aarp.c
886
int ct;
net/appletalk/aarp.c
890
for (ct = 0; ct < AARP_HASH_SIZE; ct++) {
net/appletalk/aarp.c
891
__aarp_expire_device(&resolved[ct], dev);
net/appletalk/aarp.c
892
__aarp_expire_device(&unresolved[ct], dev);
net/appletalk/aarp.c
893
__aarp_expire_device(&proxies[ct], dev);
net/appletalk/aarp.c
908
int ct = iter->bucket;
net/appletalk/aarp.c
914
while (ct < AARP_HASH_SIZE) {
net/appletalk/aarp.c
915
for (entry = table[ct]; entry; entry = entry->next) {
net/appletalk/aarp.c
918
iter->bucket = ct;
net/appletalk/aarp.c
922
++ct;
net/appletalk/aarp.c
926
ct = 0;
net/appletalk/aarp.c
931
ct = 0;
net/appletalk/ddp.c
678
int ct;
net/appletalk/ddp.c
785
for (ct = ntohs(nr->nr_firstnet);
net/appletalk/ddp.c
786
ct <= limit; ct++) {
net/appletalk/ddp.c
787
sa->sat_addr.s_net = htons(ct);
net/ax25/af_ax25.c
1184
int ct = 0, err = 0;
net/ax25/af_ax25.c
1260
while (ct < fsa->fsa_ax25.sax25_ndigis) {
net/ax25/af_ax25.c
1261
if ((fsa->fsa_digipeater[ct].ax25_call[6] &
net/ax25/af_ax25.c
1263
digi->repeated[ct] = 1;
net/ax25/af_ax25.c
1264
digi->lastrepeat = ct;
net/ax25/af_ax25.c
1266
digi->repeated[ct] = 0;
net/ax25/af_ax25.c
1268
digi->calls[ct] = fsa->fsa_digipeater[ct];
net/ax25/af_ax25.c
1269
ct++;
net/ax25/af_ax25.c
1559
int ct = 0;
net/ax25/af_ax25.c
1573
while (ct < usax->sax25_ndigis) {
net/ax25/af_ax25.c
1574
dtmp.repeated[ct] = 0;
net/ax25/af_ax25.c
1575
dtmp.calls[ct] = fsa->fsa_digipeater[ct];
net/ax25/af_ax25.c
1576
ct++;
net/ax25/af_ax25.c
1743
int ct;
net/ax25/af_ax25.c
1746
for (ct = 0; ct < digi.ndigi; ct++)
net/ax25/af_ax25.c
1747
fsa->fsa_digipeater[ct] = digi.calls[ct];
net/ax25/ax25_addr.c
116
int ct = 0;
net/ax25/ax25_addr.c
118
while (ct < 6) {
net/ax25/ax25_addr.c
119
if ((a->ax25_call[ct] & 0xFE) != (b->ax25_call[ct] & 0xFE)) /* Clean off repeater bits */
net/ax25/ax25_addr.c
121
ct++;
net/ax25/ax25_addr.c
124
if ((a->ax25_call[ct] & 0x1E) == (b->ax25_call[ct] & 0x1E)) /* SSID without control bit */
net/ax25/ax25_addr.c
219
int ct = 0;
net/ax25/ax25_addr.c
252
while (ct < d->ndigi) {
net/ax25/ax25_addr.c
253
memcpy(buf, &d->calls[ct], AX25_ADDR_LEN);
net/ax25/ax25_addr.c
255
if (d->repeated[ct])
net/ax25/ax25_addr.c
265
ct++;
net/ax25/ax25_addr.c
286
int ct;
net/ax25/ax25_addr.c
292
for (ct = 0; ct < in->ndigi; ct++) {
net/ax25/ax25_addr.c
293
out->calls[ct] = in->calls[in->ndigi - ct - 1];
net/ax25/ax25_addr.c
295
if (ct <= out->lastrepeat) {
net/ax25/ax25_addr.c
296
out->calls[ct].ax25_call[6] |= AX25_HBIT;
net/ax25/ax25_addr.c
297
out->repeated[ct] = 1;
net/ax25/ax25_addr.c
299
out->calls[ct].ax25_call[6] &= ~AX25_HBIT;
net/ax25/ax25_addr.c
300
out->repeated[ct] = 0;
net/bridge/br_netfilter_hooks.c
587
struct nf_conn *ct;
net/bridge/br_netfilter_hooks.c
598
ct = container_of(nfct, struct nf_conn, ct_general);
net/bridge/br_netfilter_hooks.c
599
if (likely(nf_ct_is_confirmed(ct)))
net/bridge/netfilter/nf_conntrack_bridge.c
150
const struct nf_conn *ct;
net/bridge/netfilter/nf_conntrack_bridge.c
156
ct = nf_ct_get(skb, &ctinfo);
net/bridge/netfilter/nf_conntrack_bridge.c
157
if (ct)
net/bridge/netfilter/nf_conntrack_bridge.c
158
zone_id = nf_ct_zone_id(nf_ct_zone(ct), CTINFO2DIR(ctinfo));
net/bridge/netfilter/nf_conntrack_bridge.c
181
const struct nf_conn *ct;
net/bridge/netfilter/nf_conntrack_bridge.c
184
ct = nf_ct_get(skb, &ctinfo);
net/bridge/netfilter/nf_conntrack_bridge.c
185
if (ct)
net/bridge/netfilter/nf_conntrack_bridge.c
186
zone_id = nf_ct_zone_id(nf_ct_zone(ct), CTINFO2DIR(ctinfo));
net/bridge/netfilter/nf_conntrack_bridge.c
244
struct nf_conn *ct;
net/bridge/netfilter/nf_conntrack_bridge.c
248
ct = nf_ct_get(skb, &ctinfo);
net/bridge/netfilter/nf_conntrack_bridge.c
249
if ((ct && !nf_ct_is_template(ct)) ||
net/bridge/netfilter/nf_conntrack_bridge.c
298
struct nf_conn *ct;
net/bridge/netfilter/nf_conntrack_bridge.c
312
ct = container_of(nfct, struct nf_conn, ct_general);
net/bridge/netfilter/nf_conntrack_bridge.c
313
if (nf_ct_is_confirmed(ct) || nf_ct_is_template(ct))
net/bridge/netfilter/nf_conntrack_bridge.c
318
nf_ct_put(ct);
net/core/flow_dissector.c
329
struct nf_conn *ct;
net/core/flow_dissector.c
334
ct = nf_ct_get(skb, &ctinfo);
net/core/flow_dissector.c
335
if (!ct && !post_ct)
net/core/flow_dissector.c
342
if (!ct) {
net/core/flow_dissector.c
352
key->ct_zone = ct->zone.id;
net/core/flow_dissector.c
355
key->ct_mark = READ_ONCE(ct->mark);
net/core/flow_dissector.c
358
cl = nf_ct_labels_find(ct);
net/ipv4/icmp.c
1023
struct nf_conn *ct;
net/ipv4/icmp.c
1027
ct = nf_ct_get(skb_in, &ctinfo);
net/ipv4/icmp.c
1028
if (!ct || !(READ_ONCE(ct->status) & IPS_NAT_MASK)) {
net/ipv4/icmp.c
1044
ip_hdr(skb_in)->saddr = ct->tuplehash[dir].tuple.src.u3.ip;
net/ipv4/ipmr.c
1770
int ct;
net/ipv4/ipmr.c
1777
for (ct = 0; ct < mrt->maxvif; ct++, v++) {
net/ipv4/ipmr.c
1779
vif_delete(mrt, ct, 1, NULL);
net/ipv4/ipmr.c
1985
int ct;
net/ipv4/ipmr.c
1987
for (ct = READ_ONCE(mrt->maxvif) - 1; ct >= 0; ct--) {
net/ipv4/ipmr.c
1988
if (rcu_access_pointer(mrt->vif_table[ct].dev) == dev)
net/ipv4/ipmr.c
1991
return ct;
net/ipv4/ipmr.c
2002
int vif, ct;
net/ipv4/ipmr.c
2082
for (ct = c->_c.mfc_un.res.maxvif - 1;
net/ipv4/ipmr.c
2083
ct >= c->_c.mfc_un.res.minvif; ct--) {
net/ipv4/ipmr.c
2086
ct != true_vifi) &&
net/ipv4/ipmr.c
2087
ip_hdr(skb)->ttl > c->_c.mfc_un.res.ttls[ct]) {
net/ipv4/ipmr.c
2095
psend = ct;
net/ipv4/ipmr.c
2246
int ct;
net/ipv4/ipmr.c
2267
for (ct = c->_c.mfc_un.res.maxvif - 1;
net/ipv4/ipmr.c
2268
ct >= c->_c.mfc_un.res.minvif; ct--) {
net/ipv4/ipmr.c
2269
if (ip_hdr(skb)->ttl > c->_c.mfc_un.res.ttls[ct]) {
net/ipv4/ipmr.c
2278
psend = ct;
net/ipv4/ipmr_base.c
118
for (iter->ct = 0; iter->ct < mrt->maxvif; ++iter->ct) {
net/ipv4/ipmr_base.c
119
if (!VIF_EXISTS(mrt, iter->ct))
net/ipv4/ipmr_base.c
122
return &mrt->vif_table[iter->ct];
net/ipv4/ipmr_base.c
138
while (++iter->ct < mrt->maxvif) {
net/ipv4/ipmr_base.c
139
if (!VIF_EXISTS(mrt, iter->ct))
net/ipv4/ipmr_base.c
141
return &mrt->vif_table[iter->ct];
net/ipv4/ipmr_base.c
216
int ct;
net/ipv4/ipmr_base.c
240
for (ct = c->mfc_un.res.minvif; ct < c->mfc_un.res.maxvif; ct++) {
net/ipv4/ipmr_base.c
241
struct vif_device *vif = &mrt->vif_table[ct];
net/ipv4/ipmr_base.c
244
if (vif_dev && c->mfc_un.res.ttls[ct] < 255) {
net/ipv4/ipmr_base.c
254
nhp->rtnh_hops = c->mfc_un.res.ttls[ct];
net/ipv4/ipmr_base.c
283
int ct;
net/ipv4/ipmr_base.c
285
for (ct = c->mfc_un.res.minvif; ct < c->mfc_un.res.maxvif; ct++) {
net/ipv4/ipmr_base.c
289
vif = &mrt->vif_table[ct];
net/ipv4/ipmr_base.c
291
if (vif_dev && c->mfc_un.res.ttls[ct] < 255 &&
net/ipv4/netfilter/nf_defrag_ipv4.c
48
const struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/ipv4/netfilter/nf_defrag_ipv4.c
50
zone_id = nf_ct_zone_id(nf_ct_zone(ct), CTINFO2DIR(ctinfo));
net/ipv4/netfilter/nf_nat_h323.c
104
if (get_h225_addr(ct, *data, &taddr[i], &addr, &port)) {
net/ipv4/netfilter/nf_nat_h323.c
105
if (addr.ip == ct->tuplehash[dir].tuple.src.u3.ip &&
net/ipv4/netfilter/nf_nat_h323.c
111
get_h225_addr(ct, *data, &taddr[0],
net/ipv4/netfilter/nf_nat_h323.c
118
&ct->tuplehash[!dir].tuple.dst.u3.ip,
net/ipv4/netfilter/nf_nat_h323.c
122
&ct->tuplehash[!dir].
net/ipv4/netfilter/nf_nat_h323.c
125
} else if (addr.ip == ct->tuplehash[dir].tuple.dst.u3.ip &&
net/ipv4/netfilter/nf_nat_h323.c
130
&ct->tuplehash[!dir].tuple.src.u3.ip,
net/ipv4/netfilter/nf_nat_h323.c
134
&ct->tuplehash[!dir].
net/ipv4/netfilter/nf_nat_h323.c
145
static int set_ras_addr(struct sk_buff *skb, struct nf_conn *ct,
net/ipv4/netfilter/nf_nat_h323.c
156
if (get_h225_addr(ct, *data, &taddr[i], &addr, &port) &&
net/ipv4/netfilter/nf_nat_h323.c
157
addr.ip == ct->tuplehash[dir].tuple.src.u3.ip &&
net/ipv4/netfilter/nf_nat_h323.c
158
port == ct->tuplehash[dir].tuple.src.u.udp.port) {
net/ipv4/netfilter/nf_nat_h323.c
161
&ct->tuplehash[!dir].tuple.dst.u3.ip,
net/ipv4/netfilter/nf_nat_h323.c
162
ntohs(ct->tuplehash[!dir].tuple.dst.u.udp.port));
net/ipv4/netfilter/nf_nat_h323.c
164
&ct->tuplehash[!dir].tuple.dst.u3,
net/ipv4/netfilter/nf_nat_h323.c
165
ct->tuplehash[!dir].tuple.
net/ipv4/netfilter/nf_nat_h323.c
174
static int nat_rtp_rtcp(struct sk_buff *skb, struct nf_conn *ct,
net/ipv4/netfilter/nf_nat_h323.c
182
struct nf_ct_h323_master *info = nfct_help_data(ct);
net/ipv4/netfilter/nf_nat_h323.c
252
&ct->tuplehash[!dir].tuple.dst.u3,
net/ipv4/netfilter/nf_nat_h323.c
28
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/ipv4/netfilter/nf_nat_h323.c
280
static int nat_t120(struct sk_buff *skb, struct nf_conn *ct,
net/ipv4/netfilter/nf_nat_h323.c
302
&ct->tuplehash[!dir].tuple.dst.u3,
net/ipv4/netfilter/nf_nat_h323.c
318
static int nat_h245(struct sk_buff *skb, struct nf_conn *ct,
net/ipv4/netfilter/nf_nat_h323.c
324
struct nf_ct_h323_master *info = nfct_help_data(ct);
net/ipv4/netfilter/nf_nat_h323.c
345
&ct->tuplehash[!dir].tuple.dst.u3,
net/ipv4/netfilter/nf_nat_h323.c
396
static int nat_q931(struct sk_buff *skb, struct nf_conn *ct,
net/ipv4/netfilter/nf_nat_h323.c
402
struct nf_ct_h323_master *info = nfct_help_data(ct);
net/ipv4/netfilter/nf_nat_h323.c
41
if (!nf_nat_mangle_tcp_packet(skb, ct, ctinfo,
net/ipv4/netfilter/nf_nat_h323.c
424
&ct->tuplehash[!dir].tuple.dst.u3,
net/ipv4/netfilter/nf_nat_h323.c
436
get_h225_addr(ct, *data, &taddr[0], &addr, &port) &&
net/ipv4/netfilter/nf_nat_h323.c
439
&ct->tuplehash[!dir].tuple.dst.u3,
net/ipv4/netfilter/nf_nat_h323.c
479
static int nat_callforwarding(struct sk_buff *skb, struct nf_conn *ct,
net/ipv4/netfilter/nf_nat_h323.c
491
exp->tuple.dst.u3.ip = ct->tuplehash[!dir].tuple.dst.u3.ip;
net/ipv4/netfilter/nf_nat_h323.c
504
&ct->tuplehash[!dir].tuple.dst.u3,
net/ipv4/netfilter/nf_nat_h323.c
55
if (!nf_nat_mangle_udp_packet(skb, ct, ctinfo,
net/ipv4/netfilter/nf_nat_h323.c
92
static int set_sig_addr(struct sk_buff *skb, struct nf_conn *ct,
net/ipv4/netfilter/nf_nat_h323.c
97
const struct nf_ct_h323_master *info = nfct_help_data(ct);
net/ipv4/netfilter/nf_nat_pptp.c
100
= ct->master->tuplehash[!exp->dir].tuple.dst.u3;
net/ipv4/netfilter/nf_nat_pptp.c
105
nf_nat_setup_info(ct, &range, NF_NAT_MANIP_SRC);
net/ipv4/netfilter/nf_nat_pptp.c
110
= ct->master->tuplehash[!exp->dir].tuple.src.u3;
net/ipv4/netfilter/nf_nat_pptp.c
115
nf_nat_setup_info(ct, &range, NF_NAT_MANIP_DST);
net/ipv4/netfilter/nf_nat_pptp.c
121
struct nf_conn *ct,
net/ipv4/netfilter/nf_nat_pptp.c
129
struct nf_conn_nat *nat = nfct_nat(ct);
net/ipv4/netfilter/nf_nat_pptp.c
139
ct_pptp_info = nfct_help_data(ct);
net/ipv4/netfilter/nf_nat_pptp.c
156
new_callid = ct->tuplehash[IP_CT_DIR_REPLY].tuple.dst.u.tcp.port;
net/ipv4/netfilter/nf_nat_pptp.c
189
if (!nf_nat_mangle_tcp_packet(skb, ct, ctinfo, protoff,
net/ipv4/netfilter/nf_nat_pptp.c
202
const struct nf_conn *ct = expect_orig->master;
net/ipv4/netfilter/nf_nat_pptp.c
203
struct nf_conn_nat *nat = nfct_nat(ct);
net/ipv4/netfilter/nf_nat_pptp.c
211
ct_pptp_info = nfct_help_data(ct);
net/ipv4/netfilter/nf_nat_pptp.c
232
struct nf_conn *ct,
net/ipv4/netfilter/nf_nat_pptp.c
239
struct nf_conn_nat *nat = nfct_nat(ct);
net/ipv4/netfilter/nf_nat_pptp.c
289
if (!nf_nat_mangle_tcp_packet(skb, ct, ctinfo, protoff,
net/ipv4/netfilter/nf_nat_pptp.c
43
static void pptp_nat_expected(struct nf_conn *ct,
net/ipv4/netfilter/nf_nat_pptp.c
46
struct net *net = nf_ct_net(ct);
net/ipv4/netfilter/nf_nat_pptp.c
47
const struct nf_conn *master = ct->master;
net/ipv4/netfilter/nf_nat_pptp.c
55
nat = nf_ct_nat_ext_add(ct);
net/ipv4/netfilter/nf_nat_pptp.c
85
other_exp = nf_ct_expect_find_get(net, nf_ct_zone(ct), &t);
net/ipv4/netfilter/nf_nat_pptp.c
95
BUG_ON(ct->status & IPS_NAT_DONE_MASK);
net/ipv4/netfilter/nf_nat_snmp_basic_main.c
126
static int snmp_translate(struct nf_conn *ct, int dir, struct sk_buff *skb)
net/ipv4/netfilter/nf_nat_snmp_basic_main.c
136
ctx.from = ct->tuplehash[dir].tuple.src.u3.ip;
net/ipv4/netfilter/nf_nat_snmp_basic_main.c
137
ctx.to = ct->tuplehash[!dir].tuple.dst.u3.ip;
net/ipv4/netfilter/nf_nat_snmp_basic_main.c
139
ctx.from = ct->tuplehash[!dir].tuple.src.u3.ip;
net/ipv4/netfilter/nf_nat_snmp_basic_main.c
140
ctx.to = ct->tuplehash[dir].tuple.dst.u3.ip;
net/ipv4/netfilter/nf_nat_snmp_basic_main.c
150
nf_ct_helper_log(skb, ct, "parser failed\n");
net/ipv4/netfilter/nf_nat_snmp_basic_main.c
161
struct nf_conn *ct,
net/ipv4/netfilter/nf_nat_snmp_basic_main.c
176
if (!(ct->status & IPS_NAT_MASK))
net/ipv4/netfilter/nf_nat_snmp_basic_main.c
185
nf_ct_helper_log(skb, ct, "dropping malformed packet\n");
net/ipv4/netfilter/nf_nat_snmp_basic_main.c
190
nf_ct_helper_log(skb, ct, "cannot mangle packet");
net/ipv4/netfilter/nf_nat_snmp_basic_main.c
195
ret = snmp_translate(ct, dir, skb);
net/ipv4/netfilter/nf_socket_ipv4.c
130
ct = nf_ct_get(skb, &ctinfo);
net/ipv4/netfilter/nf_socket_ipv4.c
131
if (ct &&
net/ipv4/netfilter/nf_socket_ipv4.c
136
(ct->status & IPS_SRC_NAT_DONE)) {
net/ipv4/netfilter/nf_socket_ipv4.c
138
daddr = ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3.ip;
net/ipv4/netfilter/nf_socket_ipv4.c
140
ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u.tcp.port :
net/ipv4/netfilter/nf_socket_ipv4.c
141
ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u.udp.port;
net/ipv4/netfilter/nf_socket_ipv4.c
93
struct nf_conn const *ct;
net/ipv6/ip6_icmp.c
59
struct nf_conn *ct;
net/ipv6/ip6_icmp.c
61
ct = nf_ct_get(skb_in, &ctinfo);
net/ipv6/ip6_icmp.c
62
if (!ct || !(READ_ONCE(ct->status) & IPS_NAT_MASK)) {
net/ipv6/ip6_icmp.c
78
ipv6_hdr(skb_in)->saddr = ct->tuplehash[dir].tuple.src.u3.in6;
net/ipv6/ip6mr.c
1265
int ct;
net/ipv6/ip6mr.c
1272
for (ct = 0; ct < mrt->maxvif; ct++, v++) {
net/ipv6/ip6mr.c
1274
mif6_delete(mrt, ct, 1, NULL);
net/ipv6/ip6mr.c
2138
int ct;
net/ipv6/ip6mr.c
2141
for (ct = READ_ONCE(mrt->maxvif) - 1; ct >= 0; ct--) {
net/ipv6/ip6mr.c
2142
if (rcu_access_pointer(mrt->vif_table[ct].dev) == dev)
net/ipv6/ip6mr.c
2145
return ct;
net/ipv6/ip6mr.c
2154
int vif, ct;
net/ipv6/ip6mr.c
2224
for (ct = c->_c.mfc_un.res.maxvif - 1;
net/ipv6/ip6mr.c
2225
ct >= c->_c.mfc_un.res.minvif; ct--) {
net/ipv6/ip6mr.c
2227
if ((!ipv6_addr_any(&c->mf6c_origin) || ct != true_vifi) &&
net/ipv6/ip6mr.c
2228
ipv6_hdr(skb)->hop_limit > c->_c.mfc_un.res.ttls[ct]) {
net/ipv6/ip6mr.c
2234
psend = ct;
net/ipv6/ip6mr.c
2253
int ct;
net/ipv6/ip6mr.c
2275
for (ct = c->_c.mfc_un.res.maxvif - 1;
net/ipv6/ip6mr.c
2276
ct >= c->_c.mfc_un.res.minvif; ct--) {
net/ipv6/ip6mr.c
2277
if (ipv6_hdr(skb)->hop_limit > c->_c.mfc_un.res.ttls[ct]) {
net/ipv6/ip6mr.c
2285
psend = ct;
net/ipv6/netfilter/nf_defrag_ipv6_hooks.c
38
const struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/ipv6/netfilter/nf_defrag_ipv6_hooks.c
40
zone_id = nf_ct_zone_id(nf_ct_zone(ct), CTINFO2DIR(ctinfo));
net/ipv6/netfilter/nf_socket_ipv6.c
107
struct nf_conn const *ct;
net/ipv6/netfilter/nf_socket_ipv6.c
147
ct = nf_ct_get(skb, &ctinfo);
net/ipv6/netfilter/nf_socket_ipv6.c
148
if (ct &&
net/ipv6/netfilter/nf_socket_ipv6.c
153
(ct->status & IPS_SRC_NAT_DONE)) {
net/ipv6/netfilter/nf_socket_ipv6.c
154
daddr = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3.in6;
net/ipv6/netfilter/nf_socket_ipv6.c
156
ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u.tcp.port :
net/ipv6/netfilter/nf_socket_ipv6.c
157
ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u.udp.port;
net/mac80211/mesh.c
1034
enum nl80211_channel_type ct;
net/mac80211/mesh.c
1070
ct = cfg80211_get_chandef_type(&csa->settings.chandef);
net/mac80211/mesh.c
1071
if (ct == NL80211_CHAN_HT40PLUS)
net/netfilter/ipvs/ip_vs_conn.c
766
int ip_vs_check_template(struct ip_vs_conn *ct, struct ip_vs_dest *cdest)
net/netfilter/ipvs/ip_vs_conn.c
768
struct ip_vs_dest *dest = ct->dest;
net/netfilter/ipvs/ip_vs_conn.c
769
struct netns_ipvs *ipvs = ct->ipvs;
net/netfilter/ipvs/ip_vs_conn.c
781
ip_vs_proto_name(ct->protocol),
net/netfilter/ipvs/ip_vs_conn.c
782
IP_VS_DBG_ADDR(ct->af, &ct->caddr),
net/netfilter/ipvs/ip_vs_conn.c
783
ntohs(ct->cport),
net/netfilter/ipvs/ip_vs_conn.c
784
IP_VS_DBG_ADDR(ct->af, &ct->vaddr),
net/netfilter/ipvs/ip_vs_conn.c
785
ntohs(ct->vport),
net/netfilter/ipvs/ip_vs_conn.c
786
IP_VS_DBG_ADDR(ct->daf, &ct->daddr),
net/netfilter/ipvs/ip_vs_conn.c
787
ntohs(ct->dport));
net/netfilter/ipvs/ip_vs_conn.c
792
if (ct->vport != htons(0xffff)) {
net/netfilter/ipvs/ip_vs_conn.c
793
if (ip_vs_conn_unhash(ct)) {
net/netfilter/ipvs/ip_vs_conn.c
794
ct->dport = htons(0xffff);
net/netfilter/ipvs/ip_vs_conn.c
795
ct->vport = htons(0xffff);
net/netfilter/ipvs/ip_vs_conn.c
796
ct->cport = 0;
net/netfilter/ipvs/ip_vs_conn.c
797
ip_vs_conn_hash(ct);
net/netfilter/ipvs/ip_vs_conn.c
805
__ip_vs_conn_put(ct);
net/netfilter/ipvs/ip_vs_conn.c
859
struct ip_vs_conn *ct = cp->control;
net/netfilter/ipvs/ip_vs_conn.c
865
if (ct) {
net/netfilter/ipvs/ip_vs_conn.c
866
bool has_ref = !cp->timeout && __ip_vs_conn_get(ct);
net/netfilter/ipvs/ip_vs_conn.c
870
if (has_ref && !atomic_read(&ct->n_control) &&
net/netfilter/ipvs/ip_vs_conn.c
871
(!(ct->flags & IP_VS_CONN_F_TEMPLATE) ||
net/netfilter/ipvs/ip_vs_conn.c
872
!(ct->state & IP_VS_CTPL_S_ASSURED))) {
net/netfilter/ipvs/ip_vs_conn.c
874
ip_vs_conn_del_put(ct);
net/netfilter/ipvs/ip_vs_conn.c
876
__ip_vs_conn_put(ct);
net/netfilter/ipvs/ip_vs_core.c
1136
struct ip_vs_conn *ct = NULL, *cp = NULL;
net/netfilter/ipvs/ip_vs_core.c
1168
ct = ip_vs_ct_in_get(&param);
net/netfilter/ipvs/ip_vs_core.c
1170
if (!ct || !ip_vs_check_template(ct, dest)) {
net/netfilter/ipvs/ip_vs_core.c
1171
ct = ip_vs_conn_new(&param, dest->af, daddr, dport,
net/netfilter/ipvs/ip_vs_core.c
1173
if (!ct) {
net/netfilter/ipvs/ip_vs_core.c
1177
ct->timeout = svc->timeout;
net/netfilter/ipvs/ip_vs_core.c
1191
if (ct)
net/netfilter/ipvs/ip_vs_core.c
1192
ip_vs_conn_put(ct);
net/netfilter/ipvs/ip_vs_core.c
1195
if (ct) {
net/netfilter/ipvs/ip_vs_core.c
1196
ip_vs_control_add(cp, ct);
net/netfilter/ipvs/ip_vs_core.c
1197
ip_vs_conn_put(ct);
net/netfilter/ipvs/ip_vs_core.c
258
struct ip_vs_conn *ct;
net/netfilter/ipvs/ip_vs_core.c
339
ct = ip_vs_ct_in_get(&param);
net/netfilter/ipvs/ip_vs_core.c
340
if (!ct || !ip_vs_check_template(ct, NULL)) {
net/netfilter/ipvs/ip_vs_core.c
370
ct = ip_vs_conn_new(&param, dest->af, &dest->addr, dport,
net/netfilter/ipvs/ip_vs_core.c
372
if (ct == NULL) {
net/netfilter/ipvs/ip_vs_core.c
378
ct->timeout = svc->timeout;
net/netfilter/ipvs/ip_vs_core.c
381
dest = ct->dest;
net/netfilter/ipvs/ip_vs_core.c
402
ip_vs_conn_put(ct);
net/netfilter/ipvs/ip_vs_core.c
410
ip_vs_control_add(cp, ct);
net/netfilter/ipvs/ip_vs_core.c
411
ip_vs_conn_put(ct);
net/netfilter/ipvs/ip_vs_ftp.c
261
struct nf_conn *ct;
net/netfilter/ipvs/ip_vs_ftp.c
364
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/ipvs/ip_vs_ftp.c
365
if (ct) {
net/netfilter/ipvs/ip_vs_ftp.c
374
mangled = nf_nat_mangle_tcp_packet(skb, ct, ctinfo,
net/netfilter/ipvs/ip_vs_ftp.c
380
ip_vs_nfct_expect_related(skb, ct, n_cp,
net/netfilter/ipvs/ip_vs_nfct.c
103
new_tuple = ct->tuplehash[IP_CT_DIR_REPLY].tuple;
net/netfilter/ipvs/ip_vs_nfct.c
120
__func__, ct, ct->status, ctinfo,
net/netfilter/ipvs/ip_vs_nfct.c
121
ARG_TUPLE(&ct->tuplehash[IP_CT_DIR_REPLY].tuple));
net/netfilter/ipvs/ip_vs_nfct.c
124
__func__, ct, ct->status, ctinfo,
net/netfilter/ipvs/ip_vs_nfct.c
126
nf_conntrack_alter_reply(ct, &new_tuple);
net/netfilter/ipvs/ip_vs_nfct.c
128
__func__, ct, ARG_CONN(cp));
net/netfilter/ipvs/ip_vs_nfct.c
139
static void ip_vs_nfct_expect_callback(struct nf_conn *ct,
net/netfilter/ipvs/ip_vs_nfct.c
145
struct net *net = nf_ct_net(ct);
net/netfilter/ipvs/ip_vs_nfct.c
156
orig = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple;
net/netfilter/ipvs/ip_vs_nfct.c
165
__func__, ct, ct->status, ARG_CONN(cp));
net/netfilter/ipvs/ip_vs_nfct.c
166
new_reply = ct->tuplehash[IP_CT_DIR_REPLY].tuple;
net/netfilter/ipvs/ip_vs_nfct.c
169
__func__, ct, ARG_TUPLE(&new_reply));
net/netfilter/ipvs/ip_vs_nfct.c
181
__func__, ct, ct->status, ARG_CONN(cp));
net/netfilter/ipvs/ip_vs_nfct.c
182
new_reply = ct->tuplehash[IP_CT_DIR_REPLY].tuple;
net/netfilter/ipvs/ip_vs_nfct.c
185
__func__, ct, ARG_TUPLE(&new_reply));
net/netfilter/ipvs/ip_vs_nfct.c
193
__func__, ct, ct->status, ARG_TUPLE(orig));
net/netfilter/ipvs/ip_vs_nfct.c
199
nf_conntrack_alter_reply(ct, &new_reply);
net/netfilter/ipvs/ip_vs_nfct.c
210
void ip_vs_nfct_expect_related(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/ipvs/ip_vs_nfct.c
216
if (ct == NULL)
net/netfilter/ipvs/ip_vs_nfct.c
219
exp = nf_ct_expect_alloc(ct);
net/netfilter/ipvs/ip_vs_nfct.c
223
nf_ct_expect_init(exp, NF_CT_EXPECT_CLASS_DEFAULT, nf_ct_l3num(ct),
net/netfilter/ipvs/ip_vs_nfct.c
232
__func__, ct, ARG_TUPLE(&exp->tuple));
net/netfilter/ipvs/ip_vs_nfct.c
244
struct nf_conn *ct;
net/netfilter/ipvs/ip_vs_nfct.c
263
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/ipvs/ip_vs_nfct.c
264
if (nf_ct_kill(ct)) {
net/netfilter/ipvs/ip_vs_nfct.c
267
__func__, ct, ARG_TUPLE(&tuple));
net/netfilter/ipvs/ip_vs_nfct.c
271
__func__, ct, ARG_TUPLE(&tuple));
net/netfilter/ipvs/ip_vs_nfct.c
273
nf_ct_put(ct);
net/netfilter/ipvs/ip_vs_nfct.c
73
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/ipvs/ip_vs_nfct.c
76
if (ct == NULL || nf_ct_is_confirmed(ct) ||
net/netfilter/ipvs/ip_vs_nfct.c
77
nf_ct_is_dying(ct))
net/netfilter/ipvs/ip_vs_nfct.c
93
if (cp->app && nf_ct_protonum(ct) == IPPROTO_TCP &&
net/netfilter/ipvs/ip_vs_nfct.c
94
!nfct_seqadj(ct) && !nfct_seqadj_ext_add(ct))
net/netfilter/ipvs/ip_vs_pe_sip.c
107
struct ip_vs_conn *ct)
net/netfilter/ipvs/ip_vs_pe_sip.c
112
if (ct->af == p->af &&
net/netfilter/ipvs/ip_vs_pe_sip.c
113
ip_vs_addr_equal(p->af, p->caddr, &ct->caddr) &&
net/netfilter/ipvs/ip_vs_pe_sip.c
117
p->vaddr, &ct->vaddr) &&
net/netfilter/ipvs/ip_vs_pe_sip.c
118
ct->vport == p->vport &&
net/netfilter/ipvs/ip_vs_pe_sip.c
119
ct->flags & IP_VS_CONN_F_TEMPLATE &&
net/netfilter/ipvs/ip_vs_pe_sip.c
120
ct->protocol == p->protocol &&
net/netfilter/ipvs/ip_vs_pe_sip.c
121
ct->pe_data && ct->pe_data_len == p->pe_data_len &&
net/netfilter/ipvs/ip_vs_pe_sip.c
122
!memcmp(ct->pe_data, p->pe_data, p->pe_data_len))
net/netfilter/ipvs/ip_vs_xmit.c
1535
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/ipvs/ip_vs_xmit.c
1537
if (ct) {
net/netfilter/ipvs/ip_vs_xmit.c
1618
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/ipvs/ip_vs_xmit.c
1620
if (ct) {
net/netfilter/ipvs/ip_vs_xmit.c
806
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/ipvs/ip_vs_xmit.c
808
if (ct) {
net/netfilter/ipvs/ip_vs_xmit.c
890
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/ipvs/ip_vs_xmit.c
892
if (ct) {
net/netfilter/nf_conncount.c
129
struct nf_conn **ct,
net/netfilter/nf_conncount.c
142
*ct = found_ct;
net/netfilter/nf_conncount.c
158
*ct = found_ct;
net/netfilter/nf_conncount.c
172
struct nf_conn *ct = NULL;
net/netfilter/nf_conncount.c
178
if (!get_ct_or_tuple_from_skb(net, skb, l3num, &ct, &tuple, &zone, &refcounted))
net/netfilter/nf_conncount.c
181
if (ct && nf_ct_is_confirmed(ct)) {
net/netfilter/nf_conncount.c
269
nf_ct_put(ct);
net/netfilter/nf_conncount.c
411
struct nf_conn *ct = NULL;
net/netfilter/nf_conncount.c
454
if (get_ct_or_tuple_from_skb(net, skb, l3num, &ct, &tuple, &zone, &refcounted)) {
net/netfilter/nf_conncount.c
482
nf_ct_put(ct);
net/netfilter/nf_conntrack_acct.c
27
net->ct.sysctl_acct = nf_ct_acct;
net/netfilter/nf_conntrack_amanda.c
109
nf_ct_refresh(ct, master_timeout * HZ);
net/netfilter/nf_conntrack_amanda.c
146
exp = nf_ct_expect_alloc(ct);
net/netfilter/nf_conntrack_amanda.c
148
nf_ct_helper_log(skb, ct, "cannot alloc expectation");
net/netfilter/nf_conntrack_amanda.c
152
tuple = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple;
net/netfilter/nf_conntrack_amanda.c
154
nf_ct_l3num(ct),
net/netfilter/nf_conntrack_amanda.c
159
if (nf_nat_amanda && ct->status & IPS_NAT_MASK)
net/netfilter/nf_conntrack_amanda.c
163
nf_ct_helper_log(skb, ct, "cannot add expectation");
net/netfilter/nf_conntrack_amanda.c
91
struct nf_conn *ct,
net/netfilter/nf_conntrack_bpf.c
115
struct nf_conn *ct;
net/netfilter/nf_conntrack_bpf.c
156
ct = nf_conntrack_alloc(net, &ct_zone, &otuple, &rtuple,
net/netfilter/nf_conntrack_bpf.c
158
if (IS_ERR(ct))
net/netfilter/nf_conntrack_bpf.c
161
memset(&ct->proto, 0, sizeof(ct->proto));
net/netfilter/nf_conntrack_bpf.c
162
__nf_ct_set_timeout(ct, timeout * HZ);
net/netfilter/nf_conntrack_bpf.c
168
return ct;
net/netfilter/nf_conntrack_bpf.c
179
struct nf_conn *ct;
net/netfilter/nf_conntrack_bpf.c
224
ct = nf_ct_tuplehash_to_ctrack(hash);
net/netfilter/nf_conntrack_bpf.c
227
return ct;
net/netfilter/nf_conntrack_broadcast.c
19
struct nf_conn *ct,
net/netfilter/nf_conntrack_broadcast.c
24
struct net *net = read_pnet(&ct->ct_net);
net/netfilter/nf_conntrack_broadcast.c
29
struct nf_conn_help *help = nfct_help(ct);
net/netfilter/nf_conntrack_broadcast.c
33
if (skb->sk == NULL || !net_eq(nf_ct_net(ct), sock_net(skb->sk)))
net/netfilter/nf_conntrack_broadcast.c
58
exp = nf_ct_expect_alloc(ct);
net/netfilter/nf_conntrack_broadcast.c
62
exp->tuple = ct->tuplehash[IP_CT_DIR_REPLY].tuple;
net/netfilter/nf_conntrack_broadcast.c
77
exp->zone = ct->zone;
net/netfilter/nf_conntrack_broadcast.c
82
nf_ct_refresh(ct, timeout * HZ);
net/netfilter/nf_conntrack_core.c
1034
static int nf_ct_can_merge(const struct nf_conn *ct,
net/netfilter/nf_conntrack_core.c
1037
return nf_ct_match(ct, loser_ct) ||
net/netfilter/nf_conntrack_core.c
1038
nf_ct_match_reverse(ct, loser_ct);
net/netfilter/nf_conntrack_core.c
1046
struct nf_conn *ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_core.c
1052
if (nf_ct_can_merge(ct, loser_ct)) {
net/netfilter/nf_conntrack_core.c
1053
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_core.c
1055
nf_conntrack_get(&ct->ct_general);
net/netfilter/nf_conntrack_core.c
1057
nf_ct_acct_merge(ct, ctinfo, loser_ct);
net/netfilter/nf_conntrack_core.c
1059
nf_ct_set(skb, ct, ctinfo);
net/netfilter/nf_conntrack_core.c
1173
struct nf_conn *ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_core.c
1183
l4proto = nf_ct_l4proto_find(nf_ct_protonum(ct));
net/netfilter/nf_conntrack_core.c
1209
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
1216
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_core.c
1217
net = nf_ct_net(ct);
net/netfilter/nf_conntrack_core.c
1226
zone = nf_ct_zone(ct);
net/netfilter/nf_conntrack_core.c
1232
hash = *(unsigned long *)&ct->tuplehash[IP_CT_DIR_REPLY].hnnode.pprev;
net/netfilter/nf_conntrack_core.c
1235
&ct->tuplehash[IP_CT_DIR_REPLY].tuple,
net/netfilter/nf_conntrack_core.c
1236
nf_ct_zone_id(nf_ct_zone(ct), IP_CT_DIR_REPLY));
net/netfilter/nf_conntrack_core.c
1249
if (unlikely(nf_ct_is_confirmed(ct))) {
net/netfilter/nf_conntrack_core.c
1256
if (!nf_ct_ext_valid_pre(ct->ext)) {
net/netfilter/nf_conntrack_core.c
1266
if (unlikely(nf_ct_is_dying(ct))) {
net/netfilter/nf_conntrack_core.c
1276
if (nf_ct_key_equal(h, &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple,
net/netfilter/nf_conntrack_core.c
1285
if (nf_ct_key_equal(h, &ct->tuplehash[IP_CT_DIR_REPLY].tuple,
net/netfilter/nf_conntrack_core.c
1300
ct->timeout += nfct_time_stamp;
net/netfilter/nf_conntrack_core.c
1302
__nf_conntrack_insert_prepare(ct);
net/netfilter/nf_conntrack_core.c
1308
__nf_conntrack_hash_insert(ct, hash, reply_hash);
net/netfilter/nf_conntrack_core.c
1318
set_bit(IPS_CONFIRMED_BIT, &ct->status);
net/netfilter/nf_conntrack_core.c
1327
if (!nf_ct_ext_valid_post(ct->ext)) {
net/netfilter/nf_conntrack_core.c
1328
nf_ct_kill(ct);
net/netfilter/nf_conntrack_core.c
1333
help = nfct_help(ct);
net/netfilter/nf_conntrack_core.c
1335
nf_conntrack_event_cache(IPCT_HELPER, ct);
net/netfilter/nf_conntrack_core.c
1337
nf_conntrack_event_cache(master_ct(ct) ?
net/netfilter/nf_conntrack_core.c
1338
IPCT_RELATED : IPCT_NEW, ct);
net/netfilter/nf_conntrack_core.c
1362
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
1372
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_core.c
1374
if (ct == ignored_conntrack)
net/netfilter/nf_conntrack_core.c
1377
if (nf_ct_is_expired(ct)) {
net/netfilter/nf_conntrack_core.c
1378
nf_ct_gc_expired(ct);
net/netfilter/nf_conntrack_core.c
1396
&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple) &&
net/netfilter/nf_conntrack_core.c
1397
nf_ct_zone_equal(ct, zone, IP_CT_DIR_ORIGINAL))
net/netfilter/nf_conntrack_core.c
1493
static bool gc_worker_skip_ct(const struct nf_conn *ct)
net/netfilter/nf_conntrack_core.c
1495
return !nf_ct_is_confirmed(ct) || nf_ct_is_dying(ct);
net/netfilter/nf_conntrack_core.c
1498
static bool gc_worker_can_early_drop(const struct nf_conn *ct)
net/netfilter/nf_conntrack_core.c
1501
u8 protonum = nf_ct_protonum(ct);
net/netfilter/nf_conntrack_core.c
1503
if (!test_bit(IPS_ASSURED_BIT, &ct->status))
net/netfilter/nf_conntrack_core.c
1507
if (l4proto->can_early_drop && l4proto->can_early_drop(ct))
net/netfilter/nf_conntrack_core.c
1666
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
1689
ct = kmem_cache_alloc(nf_conntrack_cachep, gfp);
net/netfilter/nf_conntrack_core.c
1690
if (ct == NULL)
net/netfilter/nf_conntrack_core.c
1693
spin_lock_init(&ct->lock);
net/netfilter/nf_conntrack_core.c
1694
ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple = *orig;
net/netfilter/nf_conntrack_core.c
1695
ct->tuplehash[IP_CT_DIR_ORIGINAL].hnnode.pprev = NULL;
net/netfilter/nf_conntrack_core.c
1696
ct->tuplehash[IP_CT_DIR_REPLY].tuple = *repl;
net/netfilter/nf_conntrack_core.c
1698
*(unsigned long *)(&ct->tuplehash[IP_CT_DIR_REPLY].hnnode.pprev) = hash;
net/netfilter/nf_conntrack_core.c
1699
ct->status = 0;
net/netfilter/nf_conntrack_core.c
1700
WRITE_ONCE(ct->timeout, 0);
net/netfilter/nf_conntrack_core.c
1701
write_pnet(&ct->ct_net, net);
net/netfilter/nf_conntrack_core.c
1702
memset_after(ct, 0, __nfct_init_offset);
net/netfilter/nf_conntrack_core.c
1704
nf_ct_zone_add(ct, zone);
net/netfilter/nf_conntrack_core.c
1709
refcount_set(&ct->ct_general.use, 0);
net/netfilter/nf_conntrack_core.c
1710
return ct;
net/netfilter/nf_conntrack_core.c
1726
void nf_conntrack_free(struct nf_conn *ct)
net/netfilter/nf_conntrack_core.c
1728
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_core.c
1734
WARN_ON(refcount_read(&ct->ct_general.use) != 0);
net/netfilter/nf_conntrack_core.c
1736
if (ct->status & IPS_SRC_NAT_DONE) {
net/netfilter/nf_conntrack_core.c
1742
nat_hook->remove_nat_bysrc(ct);
net/netfilter/nf_conntrack_core.c
1746
kfree(ct->ext);
net/netfilter/nf_conntrack_core.c
1747
kmem_cache_free(nf_conntrack_cachep, ct);
net/netfilter/nf_conntrack_core.c
1764
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
1780
ct = __nf_conntrack_alloc(net, zone, tuple, &repl_tuple, GFP_ATOMIC,
net/netfilter/nf_conntrack_core.c
1782
if (IS_ERR(ct))
net/netfilter/nf_conntrack_core.c
1783
return ERR_CAST(ct);
net/netfilter/nf_conntrack_core.c
1785
if (!nf_ct_add_synproxy(ct, tmpl)) {
net/netfilter/nf_conntrack_core.c
1786
nf_conntrack_free(ct);
net/netfilter/nf_conntrack_core.c
1793
nf_ct_timeout_ext_add(ct, rcu_dereference(timeout_ext->timeout),
net/netfilter/nf_conntrack_core.c
1796
nf_ct_acct_ext_add(ct, GFP_ATOMIC);
net/netfilter/nf_conntrack_core.c
1797
nf_ct_tstamp_ext_add(ct, GFP_ATOMIC);
net/netfilter/nf_conntrack_core.c
1798
nf_ct_labels_ext_add(ct);
net/netfilter/nf_conntrack_core.c
1803
if ((ecache || net->ct.sysctl_events) &&
net/netfilter/nf_conntrack_core.c
1804
!nf_ct_ecache_ext_add(ct, ecache ? ecache->ctmask : 0,
net/netfilter/nf_conntrack_core.c
1807
nf_conntrack_free(ct);
net/netfilter/nf_conntrack_core.c
1818
__set_bit(IPS_EXPECTED_BIT, &ct->status);
net/netfilter/nf_conntrack_core.c
1820
ct->master = exp->master;
net/netfilter/nf_conntrack_core.c
1822
help = nf_ct_helper_ext_add(ct, GFP_ATOMIC);
net/netfilter/nf_conntrack_core.c
1828
ct->mark = READ_ONCE(exp->master->mark);
net/netfilter/nf_conntrack_core.c
1831
ct->secmark = exp->master->secmark;
net/netfilter/nf_conntrack_core.c
1838
__nf_ct_try_assign_helper(ct, tmpl, GFP_ATOMIC);
net/netfilter/nf_conntrack_core.c
1851
refcount_set(&ct->ct_general.use, 1);
net/netfilter/nf_conntrack_core.c
1855
exp->expectfn(ct, exp);
net/netfilter/nf_conntrack_core.c
1859
return &ct->tuplehash[IP_CT_DIR_ORIGINAL];
net/netfilter/nf_conntrack_core.c
1876
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
1907
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_core.c
1913
unsigned long status = READ_ONCE(ct->status);
net/netfilter/nf_conntrack_core.c
1923
nf_ct_set(skb, ct, ctinfo);
net/netfilter/nf_conntrack_core.c
1958
static int generic_packet(struct nf_conn *ct, struct sk_buff *skb,
net/netfilter/nf_conntrack_core.c
1961
const unsigned int *timeout = nf_ct_timeout_lookup(ct);
net/netfilter/nf_conntrack_core.c
1964
timeout = &nf_generic_pernet(nf_ct_net(ct))->timeout;
net/netfilter/nf_conntrack_core.c
1966
nf_ct_refresh_acct(ct, ctinfo, skb, *timeout);
net/netfilter/nf_conntrack_core.c
1971
static int nf_conntrack_handle_packet(struct nf_conn *ct,
net/netfilter/nf_conntrack_core.c
1977
switch (nf_ct_protonum(ct)) {
net/netfilter/nf_conntrack_core.c
1979
return nf_conntrack_tcp_packet(ct, skb, dataoff,
net/netfilter/nf_conntrack_core.c
1982
return nf_conntrack_udp_packet(ct, skb, dataoff,
net/netfilter/nf_conntrack_core.c
1985
return nf_conntrack_icmp_packet(ct, skb, ctinfo, state);
net/netfilter/nf_conntrack_core.c
1988
return nf_conntrack_icmpv6_packet(ct, skb, ctinfo, state);
net/netfilter/nf_conntrack_core.c
1992
return nf_conntrack_udplite_packet(ct, skb, dataoff,
net/netfilter/nf_conntrack_core.c
1997
return nf_conntrack_sctp_packet(ct, skb, dataoff,
net/netfilter/nf_conntrack_core.c
2002
return nf_conntrack_gre_packet(ct, skb, dataoff,
net/netfilter/nf_conntrack_core.c
2007
return generic_packet(ct, skb, ctinfo);
net/netfilter/nf_conntrack_core.c
2014
struct nf_conn *ct, *tmpl;
net/netfilter/nf_conntrack_core.c
2056
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_core.c
2057
if (!ct) {
net/netfilter/nf_conntrack_core.c
2064
ret = nf_conntrack_handle_packet(ct, skb, dataoff, ctinfo, state);
net/netfilter/nf_conntrack_core.c
2068
nf_ct_put(ct);
net/netfilter/nf_conntrack_core.c
2086
!test_and_set_bit(IPS_SEEN_REPLY_BIT, &ct->status))
net/netfilter/nf_conntrack_core.c
2087
nf_conntrack_event_cache(IPCT_REPLY, ct);
net/netfilter/nf_conntrack_core.c
2097
void __nf_ct_refresh_acct(struct nf_conn *ct,
net/netfilter/nf_conntrack_core.c
2103
if (test_bit(IPS_FIXED_TIMEOUT_BIT, &ct->status))
net/netfilter/nf_conntrack_core.c
2107
if (nf_ct_is_confirmed(ct))
net/netfilter/nf_conntrack_core.c
2110
if (READ_ONCE(ct->timeout) != extra_jiffies)
net/netfilter/nf_conntrack_core.c
2111
WRITE_ONCE(ct->timeout, extra_jiffies);
net/netfilter/nf_conntrack_core.c
2114
nf_ct_acct_update(ct, CTINFO2DIR(ctinfo), bytes);
net/netfilter/nf_conntrack_core.c
2118
bool nf_ct_kill_acct(struct nf_conn *ct,
net/netfilter/nf_conntrack_core.c
2122
nf_ct_acct_update(ct, CTINFO2DIR(ctinfo), skb->len);
net/netfilter/nf_conntrack_core.c
2124
return nf_ct_delete(ct, 0, 0);
net/netfilter/nf_conntrack_core.c
2191
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
2195
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_core.c
2202
nf_ct_set(nskb, ct, ctinfo);
net/netfilter/nf_conntrack_core.c
2209
static int nf_confirm_cthelper(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_core.c
2216
help = nfct_help(ct);
net/netfilter/nf_conntrack_core.c
2227
switch (nf_ct_l3num(ct)) {
net/netfilter/nf_conntrack_core.c
2248
if (test_bit(IPS_SEQ_ADJUST_BIT, &ct->status) &&
net/netfilter/nf_conntrack_core.c
2250
if (!nf_ct_seq_adjust(skb, ct, ctinfo, protoff)) {
net/netfilter/nf_conntrack_core.c
2251
NF_CT_STAT_INC_ATOMIC(nf_ct_net(ct), drop);
net/netfilter/nf_conntrack_core.c
2263
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
2265
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_core.c
2266
if (!ct)
net/netfilter/nf_conntrack_core.c
2269
return nf_confirm_cthelper(skb, ct, ctinfo);
net/netfilter/nf_conntrack_core.c
2279
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
2281
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_core.c
2282
if (ct) {
net/netfilter/nf_conntrack_core.c
2283
src_tuple = nf_ct_tuple(ct, CTINFO2DIR(ctinfo));
net/netfilter/nf_conntrack_core.c
2299
ct = nf_ct_tuplehash_to_ctrack(hash);
net/netfilter/nf_conntrack_core.c
2300
src_tuple = nf_ct_tuple(ct, !hash->tuple.dst.dir);
net/netfilter/nf_conntrack_core.c
2302
nf_ct_put(ct);
net/netfilter/nf_conntrack_core.c
2313
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
2340
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_core.c
2343
!net_eq(iter_data->net, nf_ct_net(ct)))
net/netfilter/nf_conntrack_core.c
2346
if (iter(ct, iter_data->data))
net/netfilter/nf_conntrack_core.c
2356
refcount_inc(&ct->ct_general.use);
net/netfilter/nf_conntrack_core.c
2359
return ct;
net/netfilter/nf_conntrack_core.c
2366
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
2371
while ((ct = get_next_corpse(iter, iter_data, &bucket)) != NULL) {
net/netfilter/nf_conntrack_core.c
2374
nf_ct_delete(ct, iter_data->portid, iter_data->report);
net/netfilter/nf_conntrack_core.c
2375
nf_ct_put(ct);
net/netfilter/nf_conntrack_core.c
2520
free_percpu(net->ct.stat);
net/netfilter/nf_conntrack_core.c
2554
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
2587
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_core.c
2590
zone_id = nf_ct_zone_id(nf_ct_zone(ct), NF_CT_DIRECTION(h));
net/netfilter/nf_conntrack_core.c
2591
bucket = __hash_conntrack(nf_ct_net(ct),
net/netfilter/nf_conntrack_core.c
2715
struct nf_conn *ct = nf_ct_to_nf_conn(nfct);
net/netfilter/nf_conntrack_core.c
2717
switch (nf_ct_protonum(ct)) {
net/netfilter/nf_conntrack_core.c
2719
nf_conntrack_tcp_set_closing(ct);
net/netfilter/nf_conntrack_core.c
2753
net->ct.stat = alloc_percpu(struct ip_conntrack_stat);
net/netfilter/nf_conntrack_core.c
2754
if (!net->ct.stat)
net/netfilter/nf_conntrack_core.c
2769
free_percpu(net->ct.stat);
net/netfilter/nf_conntrack_core.c
2775
int __nf_ct_change_timeout(struct nf_conn *ct, u64 timeout)
net/netfilter/nf_conntrack_core.c
2777
if (test_bit(IPS_FIXED_TIMEOUT_BIT, &ct->status))
net/netfilter/nf_conntrack_core.c
2780
__nf_ct_set_timeout(ct, timeout);
net/netfilter/nf_conntrack_core.c
2782
if (test_bit(IPS_DYING_BIT, &ct->status))
net/netfilter/nf_conntrack_core.c
2789
void __nf_ct_change_status(struct nf_conn *ct, unsigned long on, unsigned long off)
net/netfilter/nf_conntrack_core.c
2799
set_bit(bit, &ct->status);
net/netfilter/nf_conntrack_core.c
2801
clear_bit(bit, &ct->status);
net/netfilter/nf_conntrack_core.c
2806
int nf_ct_change_status_common(struct nf_conn *ct, unsigned int status)
net/netfilter/nf_conntrack_core.c
2810
d = ct->status ^ status;
net/netfilter/nf_conntrack_core.c
2824
__nf_ct_change_status(ct, status, 0);
net/netfilter/nf_conntrack_core.c
484
u32 nf_ct_get_id(const struct nf_conn *ct)
net/netfilter/nf_conntrack_core.c
491
a = (unsigned long)ct;
net/netfilter/nf_conntrack_core.c
492
b = (unsigned long)ct->master;
net/netfilter/nf_conntrack_core.c
493
c = (unsigned long)nf_ct_net(ct);
net/netfilter/nf_conntrack_core.c
494
d = (unsigned long)siphash(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple,
net/netfilter/nf_conntrack_core.c
495
sizeof(ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple),
net/netfilter/nf_conntrack_core.c
511
clean_from_lists(struct nf_conn *ct)
net/netfilter/nf_conntrack_core.c
513
hlist_nulls_del_rcu(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnnode);
net/netfilter/nf_conntrack_core.c
514
hlist_nulls_del_rcu(&ct->tuplehash[IP_CT_DIR_REPLY].hnnode);
net/netfilter/nf_conntrack_core.c
517
nf_ct_remove_expectations(ct);
net/netfilter/nf_conntrack_core.c
564
static void destroy_gre_conntrack(struct nf_conn *ct)
net/netfilter/nf_conntrack_core.c
567
struct nf_conn *master = ct->master;
net/netfilter/nf_conntrack_core.c
576
struct nf_conn *ct = (struct nf_conn *)nfct;
net/netfilter/nf_conntrack_core.c
580
if (unlikely(nf_ct_is_template(ct))) {
net/netfilter/nf_conntrack_core.c
581
nf_ct_tmpl_free(ct);
net/netfilter/nf_conntrack_core.c
585
if (unlikely(nf_ct_protonum(ct) == IPPROTO_GRE))
net/netfilter/nf_conntrack_core.c
586
destroy_gre_conntrack(ct);
net/netfilter/nf_conntrack_core.c
593
nf_ct_remove_expectations(ct);
net/netfilter/nf_conntrack_core.c
595
if (ct->master)
net/netfilter/nf_conntrack_core.c
596
nf_ct_put(ct->master);
net/netfilter/nf_conntrack_core.c
598
nf_conntrack_free(ct);
net/netfilter/nf_conntrack_core.c
602
static void __nf_ct_delete_from_lists(struct nf_conn *ct)
net/netfilter/nf_conntrack_core.c
604
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_core.c
611
&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple,
net/netfilter/nf_conntrack_core.c
612
nf_ct_zone_id(nf_ct_zone(ct), IP_CT_DIR_ORIGINAL));
net/netfilter/nf_conntrack_core.c
614
&ct->tuplehash[IP_CT_DIR_REPLY].tuple,
net/netfilter/nf_conntrack_core.c
615
nf_ct_zone_id(nf_ct_zone(ct), IP_CT_DIR_REPLY));
net/netfilter/nf_conntrack_core.c
618
clean_from_lists(ct);
net/netfilter/nf_conntrack_core.c
622
static void nf_ct_delete_from_lists(struct nf_conn *ct)
net/netfilter/nf_conntrack_core.c
624
nf_ct_helper_destroy(ct);
net/netfilter/nf_conntrack_core.c
627
__nf_ct_delete_from_lists(ct);
net/netfilter/nf_conntrack_core.c
632
static void nf_ct_add_to_ecache_list(struct nf_conn *ct)
net/netfilter/nf_conntrack_core.c
635
struct nf_conntrack_net *cnet = nf_ct_pernet(nf_ct_net(ct));
net/netfilter/nf_conntrack_core.c
638
hlist_nulls_add_head_rcu(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnnode,
net/netfilter/nf_conntrack_core.c
644
bool nf_ct_delete(struct nf_conn *ct, u32 portid, int report)
net/netfilter/nf_conntrack_core.c
649
if (test_and_set_bit(IPS_DYING_BIT, &ct->status))
net/netfilter/nf_conntrack_core.c
652
tstamp = nf_conn_tstamp_find(ct);
net/netfilter/nf_conntrack_core.c
654
s32 timeout = READ_ONCE(ct->timeout) - nfct_time_stamp;
net/netfilter/nf_conntrack_core.c
661
if (nf_conntrack_event_report(IPCT_DESTROY, ct,
net/netfilter/nf_conntrack_core.c
666
nf_ct_helper_destroy(ct);
net/netfilter/nf_conntrack_core.c
668
__nf_ct_delete_from_lists(ct);
net/netfilter/nf_conntrack_core.c
669
nf_ct_add_to_ecache_list(ct);
net/netfilter/nf_conntrack_core.c
672
nf_conntrack_ecache_work(nf_ct_net(ct), NFCT_ECACHE_DESTROY_FAIL);
net/netfilter/nf_conntrack_core.c
676
net = nf_ct_net(ct);
net/netfilter/nf_conntrack_core.c
679
nf_ct_delete_from_lists(ct);
net/netfilter/nf_conntrack_core.c
680
nf_ct_put(ct);
net/netfilter/nf_conntrack_core.c
691
struct nf_conn *ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_core.c
697
nf_ct_zone_equal(ct, zone, NF_CT_DIRECTION(h)) &&
net/netfilter/nf_conntrack_core.c
698
nf_ct_is_confirmed(ct) &&
net/netfilter/nf_conntrack_core.c
699
net_eq(net, nf_ct_net(ct));
net/netfilter/nf_conntrack_core.c
715
static void nf_ct_gc_expired(struct nf_conn *ct)
net/netfilter/nf_conntrack_core.c
717
if (!refcount_inc_not_zero(&ct->ct_general.use))
net/netfilter/nf_conntrack_core.c
723
if (nf_ct_should_gc(ct))
net/netfilter/nf_conntrack_core.c
724
nf_ct_kill(ct);
net/netfilter/nf_conntrack_core.c
726
nf_ct_put(ct);
net/netfilter/nf_conntrack_core.c
748
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
750
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_core.c
751
if (nf_ct_is_expired(ct)) {
net/netfilter/nf_conntrack_core.c
752
nf_ct_gc_expired(ct);
net/netfilter/nf_conntrack_core.c
778
struct nf_conn *ct;
net/netfilter/nf_conntrack_core.c
785
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_core.c
786
if (likely(refcount_inc_not_zero(&ct->ct_general.use))) {
net/netfilter/nf_conntrack_core.c
794
nf_ct_put(ct);
net/netfilter/nf_conntrack_core.c
829
static void __nf_conntrack_hash_insert(struct nf_conn *ct,
net/netfilter/nf_conntrack_core.c
833
hlist_nulls_add_head_rcu(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnnode,
net/netfilter/nf_conntrack_core.c
835
hlist_nulls_add_head_rcu(&ct->tuplehash[IP_CT_DIR_REPLY].hnnode,
net/netfilter/nf_conntrack_core.c
867
nf_conntrack_hash_check_insert(struct nf_conn *ct)
net/netfilter/nf_conntrack_core.c
870
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_core.c
879
zone = nf_ct_zone(ct);
net/netfilter/nf_conntrack_core.c
881
if (!nf_ct_ext_valid_pre(ct->ext))
net/netfilter/nf_conntrack_core.c
888
&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple,
net/netfilter/nf_conntrack_core.c
889
nf_ct_zone_id(nf_ct_zone(ct), IP_CT_DIR_ORIGINAL));
net/netfilter/nf_conntrack_core.c
891
&ct->tuplehash[IP_CT_DIR_REPLY].tuple,
net/netfilter/nf_conntrack_core.c
892
nf_ct_zone_id(nf_ct_zone(ct), IP_CT_DIR_REPLY));
net/netfilter/nf_conntrack_core.c
899
if (nf_ct_key_equal(h, &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple,
net/netfilter/nf_conntrack_core.c
910
if (nf_ct_key_equal(h, &ct->tuplehash[IP_CT_DIR_REPLY].tuple,
net/netfilter/nf_conntrack_core.c
924
if (!nf_ct_ext_valid_post(ct->ext)) {
net/netfilter/nf_conntrack_core.c
931
refcount_set(&ct->ct_general.use, 2);
net/netfilter/nf_conntrack_core.c
932
__nf_conntrack_hash_insert(ct, hash, reply_hash);
net/netfilter/nf_conntrack_core.c
948
void nf_ct_acct_add(struct nf_conn *ct, u32 dir, unsigned int packets,
net/netfilter/nf_conntrack_core.c
953
acct = nf_conn_acct_find(ct);
net/netfilter/nf_conntrack_core.c
963
static void nf_ct_acct_merge(struct nf_conn *ct, enum ip_conntrack_info ctinfo,
net/netfilter/nf_conntrack_core.c
975
nf_ct_acct_update(ct, CTINFO2DIR(ctinfo), bytes);
net/netfilter/nf_conntrack_core.c
979
static void __nf_conntrack_insert_prepare(struct nf_conn *ct)
net/netfilter/nf_conntrack_core.c
983
refcount_inc(&ct->ct_general.use);
net/netfilter/nf_conntrack_core.c
986
tstamp = nf_conn_tstamp_find(ct);
net/netfilter/nf_conntrack_ecache.c
132
struct net *net = nf_ct_net(item->ct);
net/netfilter/nf_conntrack_ecache.c
142
notify = rcu_dereference(net->ct.nf_conntrack_event_cb);
net/netfilter/nf_conntrack_ecache.c
173
int nf_conntrack_eventmask_report(unsigned int events, struct nf_conn *ct,
net/netfilter/nf_conntrack_ecache.c
181
if (!nf_ct_is_confirmed(ct))
net/netfilter/nf_conntrack_ecache.c
184
e = nf_ct_ecache_find(ct);
net/netfilter/nf_conntrack_ecache.c
190
item.ct = ct;
net/netfilter/nf_conntrack_ecache.c
214
void nf_ct_deliver_cached_events(struct nf_conn *ct)
net/netfilter/nf_conntrack_ecache.c
220
if (!nf_ct_is_confirmed(ct) || nf_ct_is_dying(ct))
net/netfilter/nf_conntrack_ecache.c
223
e = nf_ct_ecache_find(ct);
net/netfilter/nf_conntrack_ecache.c
229
item.ct = ct;
net/netfilter/nf_conntrack_ecache.c
253
notify = rcu_dereference(net->ct.nf_conntrack_event_cb);
net/netfilter/nf_conntrack_ecache.c
279
notify = rcu_dereference_protected(net->ct.nf_conntrack_event_cb,
net/netfilter/nf_conntrack_ecache.c
282
rcu_assign_pointer(net->ct.nf_conntrack_event_cb, new);
net/netfilter/nf_conntrack_ecache.c
290
RCU_INIT_POINTER(net->ct.nf_conntrack_event_cb, NULL);
net/netfilter/nf_conntrack_ecache.c
303
net->ct.ecache_dwork_pending = true;
net/netfilter/nf_conntrack_ecache.c
308
net->ct.ecache_dwork_pending = false;
net/netfilter/nf_conntrack_ecache.c
312
static void nf_ct_ecache_tstamp_new(const struct nf_conn *ct, struct nf_conntrack_ecache *e)
net/netfilter/nf_conntrack_ecache.c
317
if (nf_ct_ext_exist(ct, NF_CT_EXT_TSTAMP))
net/netfilter/nf_conntrack_ecache.c
324
bool nf_ct_ecache_ext_add(struct nf_conn *ct, u16 ctmask, u16 expmask, gfp_t gfp)
net/netfilter/nf_conntrack_ecache.c
326
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_ecache.c
329
switch (net->ct.sysctl_events) {
net/netfilter/nf_conntrack_ecache.c
351
e = nf_ct_ext_add(ct, NF_CT_EXT_ECACHE, gfp);
net/netfilter/nf_conntrack_ecache.c
353
nf_ct_ecache_tstamp_new(ct, e);
net/netfilter/nf_conntrack_ecache.c
369
net->ct.sysctl_events = nf_ct_events;
net/netfilter/nf_conntrack_ecache.c
67
struct nf_conn *ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_ecache.c
72
if (nf_conntrack_event(IPCT_DESTROY, ct)) {
net/netfilter/nf_conntrack_ecache.c
77
hlist_nulls_del_rcu(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnnode);
net/netfilter/nf_conntrack_ecache.c
78
hlist_nulls_add_head(&ct->tuplehash[IP_CT_DIR_REPLY].hnnode, &evicted_list);
net/netfilter/nf_conntrack_ecache.c
95
struct nf_conn *ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_ecache.c
97
hlist_nulls_del_rcu(&ct->tuplehash[IP_CT_DIR_REPLY].hnnode);
net/netfilter/nf_conntrack_ecache.c
98
nf_ct_put(ct);
net/netfilter/nf_conntrack_expect.c
233
void nf_ct_remove_expectations(struct nf_conn *ct)
net/netfilter/nf_conntrack_expect.c
235
struct nf_conn_help *help = nfct_help(ct);
net/netfilter/nf_conntrack_expect.c
328
struct nf_conn *ct = exp->master;
net/netfilter/nf_conntrack_expect.c
329
struct net *net = read_pnet(&ct->ct_net);
net/netfilter/nf_conntrack_expect.c
342
help = nfct_help(ct);
net/netfilter/nf_conntrack_expect.c
349
exp->zone = ct->zone;
net/netfilter/nf_conntrack_extend.c
103
if (ct->ext) {
net/netfilter/nf_conntrack_extend.c
104
const struct nf_ct_ext *old = ct->ext;
net/netfilter/nf_conntrack_extend.c
117
new = krealloc(ct->ext, alloc, gfp);
net/netfilter/nf_conntrack_extend.c
121
if (!ct->ext) {
net/netfilter/nf_conntrack_extend.c
130
ct->ext = new;
net/netfilter/nf_conntrack_extend.c
92
void *nf_ct_ext_add(struct nf_conn *ct, enum nf_ct_ext_id id, gfp_t gfp)
net/netfilter/nf_conntrack_extend.c
98
WARN_ON(nf_ct_is_confirmed(ct));
net/netfilter/nf_conntrack_ftp.c
344
static void update_nl_seq(struct nf_conn *ct, u32 nl_seq,
net/netfilter/nf_conntrack_ftp.c
371
struct nf_conn *ct,
net/netfilter/nf_conntrack_ftp.c
382
struct nf_ct_ftp_master *ct_ftp_info = nfct_help_data(ct);
net/netfilter/nf_conntrack_ftp.c
441
cmd.l3num = nf_ct_l3num(ct);
net/netfilter/nf_conntrack_ftp.c
442
memcpy(cmd.u3.all, &ct->tuplehash[dir].tuple.src.u3.all,
net/netfilter/nf_conntrack_ftp.c
461
nf_ct_helper_log(skb, ct, "partial matching of `%s'",
net/netfilter/nf_conntrack_ftp.c
474
exp = nf_ct_expect_alloc(ct);
net/netfilter/nf_conntrack_ftp.c
476
nf_ct_helper_log(skb, ct, "cannot alloc expectation");
net/netfilter/nf_conntrack_ftp.c
484
daddr = &ct->tuplehash[!dir].tuple.dst.u3;
net/netfilter/nf_conntrack_ftp.c
487
if ((cmd.l3num == nf_ct_l3num(ct)) &&
net/netfilter/nf_conntrack_ftp.c
488
memcmp(&cmd.u3.all, &ct->tuplehash[dir].tuple.src.u3.all,
net/netfilter/nf_conntrack_ftp.c
497
&ct->tuplehash[dir].tuple.src.u3.ip);
net/netfilter/nf_conntrack_ftp.c
501
ct->tuplehash[dir].tuple.src.u3.ip6);
net/netfilter/nf_conntrack_ftp.c
516
&ct->tuplehash[!dir].tuple.src.u3, daddr,
net/netfilter/nf_conntrack_ftp.c
522
if (nf_nat_ftp && ct->status & IPS_NAT_MASK)
net/netfilter/nf_conntrack_ftp.c
528
nf_ct_helper_log(skb, ct, "cannot add expectation");
net/netfilter/nf_conntrack_ftp.c
541
update_nl_seq(ct, seq, ct_ftp_info, dir, skb);
net/netfilter/nf_conntrack_ftp.c
547
static int nf_ct_ftp_from_nlattr(struct nlattr *attr, struct nf_conn *ct)
net/netfilter/nf_conntrack_ftp.c
549
struct nf_ct_ftp_master *ftp = nfct_help_data(ct);
net/netfilter/nf_conntrack_h323_main.c
1000
static int process_progress(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1012
ret = expect_h245(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
1020
ret = process_olc(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
1031
static int process_q931(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1042
ret = process_setup(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
1046
ret = process_callproceeding(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
1052
ret = process_connect(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
1056
ret = process_alerting(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
1060
ret = process_facility(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
1064
ret = process_progress(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
1078
ret = process_h245(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
1090
struct nf_conn *ct, enum ip_conntrack_info ctinfo)
net/netfilter/nf_conntrack_h323_main.c
1107
while (get_tpkt_data(skb, protoff, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
1110
nf_ct_dump_tuple(&ct->tuplehash[CTINFO2DIR(ctinfo)].tuple);
net/netfilter/nf_conntrack_h323_main.c
1123
if (process_q931(skb, ct, ctinfo, protoff,
net/netfilter/nf_conntrack_h323_main.c
1133
nf_ct_helper_log(skb, ct, "cannot process Q.931 message");
net/netfilter/nf_conntrack_h323_main.c
1184
static struct nf_conntrack_expect *find_expect(struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1188
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_h323_main.c
1191
.src.l3num = nf_ct_l3num(ct),
net/netfilter/nf_conntrack_h323_main.c
1198
exp = __nf_ct_expect_find(net, nf_ct_zone(ct), &tuple);
net/netfilter/nf_conntrack_h323_main.c
1199
if (exp && exp->master == ct)
net/netfilter/nf_conntrack_h323_main.c
1204
static int expect_q931(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1209
struct nf_ct_h323_master *info = nfct_help_data(ct);
net/netfilter/nf_conntrack_h323_main.c
1220
if (get_h225_addr(ct, *data, &taddr[i], &addr, &port) &&
net/netfilter/nf_conntrack_h323_main.c
1221
memcmp(&addr, &ct->tuplehash[dir].tuple.src.u3,
net/netfilter/nf_conntrack_h323_main.c
1230
if ((exp = nf_ct_expect_alloc(ct)) == NULL)
net/netfilter/nf_conntrack_h323_main.c
1232
nf_ct_expect_init(exp, NF_CT_EXPECT_CLASS_DEFAULT, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_h323_main.c
1234
&ct->tuplehash[!dir].tuple.src.u3 : NULL,
net/netfilter/nf_conntrack_h323_main.c
1235
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
1241
if (nathook && nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
1242
ct->status & IPS_NAT_MASK) { /* Need NAT */
net/netfilter/nf_conntrack_h323_main.c
1243
ret = nathook->nat_q931(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1261
static int process_grq(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1271
if (nathook && nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
1272
ct->status & IPS_NAT_MASK) /* NATed */
net/netfilter/nf_conntrack_h323_main.c
1273
return nathook->set_ras_addr(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1278
static int process_gcf(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1291
if (!get_h225_addr(ct, *data, &gcf->rasAddress, &addr, &port))
net/netfilter/nf_conntrack_h323_main.c
1295
if (!memcmp(&addr, &ct->tuplehash[dir].tuple.src.u3, sizeof(addr)) &&
net/netfilter/nf_conntrack_h323_main.c
1296
port == ct->tuplehash[dir].tuple.src.u.udp.port)
net/netfilter/nf_conntrack_h323_main.c
1300
if (test_bit(IPS_EXPECTED_BIT, &ct->status))
net/netfilter/nf_conntrack_h323_main.c
1304
if ((exp = nf_ct_expect_alloc(ct)) == NULL)
net/netfilter/nf_conntrack_h323_main.c
1306
nf_ct_expect_init(exp, NF_CT_EXPECT_CLASS_DEFAULT, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_h323_main.c
1307
&ct->tuplehash[!dir].tuple.src.u3, &addr,
net/netfilter/nf_conntrack_h323_main.c
1322
static int process_rrq(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1327
struct nf_ct_h323_master *info = nfct_help_data(ct);
net/netfilter/nf_conntrack_h323_main.c
1333
ret = expect_q931(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1340
if (nathook && nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
1341
ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_h323_main.c
1342
ret = nathook->set_ras_addr(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1358
static int process_rcf(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1363
struct nf_ct_h323_master *info = nfct_help_data(ct);
net/netfilter/nf_conntrack_h323_main.c
1372
if (nathook && nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
1373
ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_h323_main.c
1374
ret = nathook->set_sig_addr(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1389
nf_ct_refresh(ct, info->timeout * HZ);
net/netfilter/nf_conntrack_h323_main.c
1393
exp = find_expect(ct, &ct->tuplehash[dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
1409
static int process_urq(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1414
struct nf_ct_h323_master *info = nfct_help_data(ct);
net/netfilter/nf_conntrack_h323_main.c
1422
if (nathook && nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
1423
ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_h323_main.c
1424
ret = nathook->set_sig_addr(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1432
nf_ct_remove_expectations(ct);
net/netfilter/nf_conntrack_h323_main.c
1437
nf_ct_refresh(ct, 30 * HZ);
net/netfilter/nf_conntrack_h323_main.c
1442
static int process_arq(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1447
const struct nf_ct_h323_master *info = nfct_help_data(ct);
net/netfilter/nf_conntrack_h323_main.c
1460
get_h225_addr(ct, *data, &arq->destCallSignalAddress,
net/netfilter/nf_conntrack_h323_main.c
1462
!memcmp(&addr, &ct->tuplehash[dir].tuple.src.u3, sizeof(addr)) &&
net/netfilter/nf_conntrack_h323_main.c
1464
nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
1465
ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_h323_main.c
1469
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
1474
get_h225_addr(ct, *data, &arq->srcCallSignalAddress,
net/netfilter/nf_conntrack_h323_main.c
1476
!memcmp(&addr, &ct->tuplehash[dir].tuple.src.u3, sizeof(addr)) &&
net/netfilter/nf_conntrack_h323_main.c
1477
nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
1478
ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_h323_main.c
1482
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
1489
static int process_acf(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1502
if (!get_h225_addr(ct, *data, &acf->destCallSignalAddress,
net/netfilter/nf_conntrack_h323_main.c
1506
if (!memcmp(&addr, &ct->tuplehash[dir].tuple.dst.u3, sizeof(addr))) {
net/netfilter/nf_conntrack_h323_main.c
1511
if (nathook && nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
1512
ct->status & IPS_NAT_MASK)
net/netfilter/nf_conntrack_h323_main.c
1513
return nathook->set_sig_addr(skb, ct, ctinfo, protoff,
net/netfilter/nf_conntrack_h323_main.c
1520
if ((exp = nf_ct_expect_alloc(ct)) == NULL)
net/netfilter/nf_conntrack_h323_main.c
1522
nf_ct_expect_init(exp, NF_CT_EXPECT_CLASS_DEFAULT, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_h323_main.c
1523
&ct->tuplehash[!dir].tuple.src.u3, &addr,
net/netfilter/nf_conntrack_h323_main.c
1539
static int process_lrq(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1549
if (nathook && nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
1550
ct->status & IPS_NAT_MASK)
net/netfilter/nf_conntrack_h323_main.c
1551
return nathook->set_ras_addr(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1556
static int process_lcf(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1569
if (!get_h225_addr(ct, *data, &lcf->callSignalAddress,
net/netfilter/nf_conntrack_h323_main.c
1574
if ((exp = nf_ct_expect_alloc(ct)) == NULL)
net/netfilter/nf_conntrack_h323_main.c
1576
nf_ct_expect_init(exp, NF_CT_EXPECT_CLASS_DEFAULT, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_h323_main.c
1577
&ct->tuplehash[!dir].tuple.src.u3, &addr,
net/netfilter/nf_conntrack_h323_main.c
1595
static int process_irr(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1606
if (nathook && nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
1607
ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_h323_main.c
1608
ret = nathook->set_ras_addr(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1613
ret = nathook->set_sig_addr(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1623
static int process_ras(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
1630
return process_grq(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1633
return process_gcf(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1636
return process_rrq(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1639
return process_rcf(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1642
return process_urq(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1645
return process_arq(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1648
return process_acf(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1651
return process_lrq(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1654
return process_lcf(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1657
return process_irr(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
1668
struct nf_conn *ct, enum ip_conntrack_info ctinfo)
net/netfilter/nf_conntrack_h323_main.c
1684
nf_ct_dump_tuple(&ct->tuplehash[CTINFO2DIR(ctinfo)].tuple);
net/netfilter/nf_conntrack_h323_main.c
1696
if (process_ras(skb, ct, ctinfo, protoff, &data, &ras) < 0)
net/netfilter/nf_conntrack_h323_main.c
1705
nf_ct_helper_log(skb, ct, "cannot process RAS message");
net/netfilter/nf_conntrack_h323_main.c
172
static int get_h245_addr(struct nf_conn *ct, const unsigned char *data,
net/netfilter/nf_conntrack_h323_main.c
184
if (nf_ct_l3num(ct) != AF_INET)
net/netfilter/nf_conntrack_h323_main.c
190
if (nf_ct_l3num(ct) != AF_INET6)
net/netfilter/nf_conntrack_h323_main.c
206
static int expect_rtp_rtcp(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
222
if (!get_h245_addr(ct, *data, taddr, &addr, &port) ||
net/netfilter/nf_conntrack_h323_main.c
223
memcmp(&addr, &ct->tuplehash[dir].tuple.src.u3, sizeof(addr)) ||
net/netfilter/nf_conntrack_h323_main.c
232
if ((rtp_exp = nf_ct_expect_alloc(ct)) == NULL)
net/netfilter/nf_conntrack_h323_main.c
234
nf_ct_expect_init(rtp_exp, NF_CT_EXPECT_CLASS_DEFAULT, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_h323_main.c
235
&ct->tuplehash[!dir].tuple.src.u3,
net/netfilter/nf_conntrack_h323_main.c
236
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
240
if ((rtcp_exp = nf_ct_expect_alloc(ct)) == NULL) {
net/netfilter/nf_conntrack_h323_main.c
244
nf_ct_expect_init(rtcp_exp, NF_CT_EXPECT_CLASS_DEFAULT, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_h323_main.c
245
&ct->tuplehash[!dir].tuple.src.u3,
net/netfilter/nf_conntrack_h323_main.c
246
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
250
if (memcmp(&ct->tuplehash[dir].tuple.src.u3,
net/netfilter/nf_conntrack_h323_main.c
251
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
252
sizeof(ct->tuplehash[dir].tuple.src.u3)) &&
net/netfilter/nf_conntrack_h323_main.c
254
nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
255
ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_h323_main.c
257
ret = nathook->nat_rtp_rtcp(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
281
struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
295
if (!get_h245_addr(ct, *data, taddr, &addr, &port) ||
net/netfilter/nf_conntrack_h323_main.c
296
memcmp(&addr, &ct->tuplehash[dir].tuple.src.u3, sizeof(addr)) ||
net/netfilter/nf_conntrack_h323_main.c
301
if ((exp = nf_ct_expect_alloc(ct)) == NULL)
net/netfilter/nf_conntrack_h323_main.c
303
nf_ct_expect_init(exp, NF_CT_EXPECT_CLASS_DEFAULT, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_h323_main.c
304
&ct->tuplehash[!dir].tuple.src.u3,
net/netfilter/nf_conntrack_h323_main.c
305
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
310
if (memcmp(&ct->tuplehash[dir].tuple.src.u3,
net/netfilter/nf_conntrack_h323_main.c
311
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
312
sizeof(ct->tuplehash[dir].tuple.src.u3)) &&
net/netfilter/nf_conntrack_h323_main.c
314
nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
315
ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_h323_main.c
317
ret = nathook->nat_t120(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
333
struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
343
ret = expect_rtp_rtcp(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
352
ret = expect_rtp_rtcp(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
361
static int process_olc(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
374
ret = process_h245_channel(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
393
process_h245_channel(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
412
ret = expect_t120(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
422
static int process_olca(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
440
ret = process_h245_channel(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
460
ret = expect_rtp_rtcp(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
470
ret = expect_rtp_rtcp(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
481
ret = expect_t120(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
491
static int process_h245(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
500
return process_olc(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
510
return process_olca(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
527
struct nf_conn *ct, enum ip_conntrack_info ctinfo)
net/netfilter/nf_conntrack_h323_main.c
544
while (get_tpkt_data(skb, protoff, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
547
nf_ct_dump_tuple(&ct->tuplehash[CTINFO2DIR(ctinfo)].tuple);
net/netfilter/nf_conntrack_h323_main.c
561
if (process_h245(skb, ct, ctinfo, protoff,
net/netfilter/nf_conntrack_h323_main.c
571
nf_ct_helper_log(skb, ct, "cannot process H.245 message");
net/netfilter/nf_conntrack_h323_main.c
589
int get_h225_addr(struct nf_conn *ct, unsigned char *data,
net/netfilter/nf_conntrack_h323_main.c
598
if (nf_ct_l3num(ct) != AF_INET)
net/netfilter/nf_conntrack_h323_main.c
604
if (nf_ct_l3num(ct) != AF_INET6)
net/netfilter/nf_conntrack_h323_main.c
621
static int expect_h245(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
634
if (!get_h225_addr(ct, *data, taddr, &addr, &port) ||
net/netfilter/nf_conntrack_h323_main.c
635
memcmp(&addr, &ct->tuplehash[dir].tuple.src.u3, sizeof(addr)) ||
net/netfilter/nf_conntrack_h323_main.c
640
if ((exp = nf_ct_expect_alloc(ct)) == NULL)
net/netfilter/nf_conntrack_h323_main.c
642
nf_ct_expect_init(exp, NF_CT_EXPECT_CLASS_DEFAULT, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_h323_main.c
643
&ct->tuplehash[!dir].tuple.src.u3,
net/netfilter/nf_conntrack_h323_main.c
644
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
649
if (memcmp(&ct->tuplehash[dir].tuple.src.u3,
net/netfilter/nf_conntrack_h323_main.c
650
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
651
sizeof(ct->tuplehash[dir].tuple.src.u3)) &&
net/netfilter/nf_conntrack_h323_main.c
653
nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
654
ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_h323_main.c
656
ret = nathook->nat_h245(skb, ct, ctinfo, protoff, data,
net/netfilter/nf_conntrack_h323_main.c
66
struct nf_conn *ct, enum ip_conntrack_info ctinfo,
net/netfilter/nf_conntrack_h323_main.c
69
struct nf_ct_h323_master *info = nfct_help_data(ct);
net/netfilter/nf_conntrack_h323_main.c
736
struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
748
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_h323_main.c
751
if (!get_h225_addr(ct, *data, taddr, &addr, &port) || port == 0)
net/netfilter/nf_conntrack_h323_main.c
758
callforward_do_filter(net, &addr, &ct->tuplehash[!dir].tuple.src.u3,
net/netfilter/nf_conntrack_h323_main.c
759
nf_ct_l3num(ct))) {
net/netfilter/nf_conntrack_h323_main.c
765
if ((exp = nf_ct_expect_alloc(ct)) == NULL)
net/netfilter/nf_conntrack_h323_main.c
767
nf_ct_expect_init(exp, NF_CT_EXPECT_CLASS_DEFAULT, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_h323_main.c
768
&ct->tuplehash[!dir].tuple.src.u3, &addr,
net/netfilter/nf_conntrack_h323_main.c
773
if (memcmp(&ct->tuplehash[dir].tuple.src.u3,
net/netfilter/nf_conntrack_h323_main.c
774
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
775
sizeof(ct->tuplehash[dir].tuple.src.u3)) &&
net/netfilter/nf_conntrack_h323_main.c
777
nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
778
ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_h323_main.c
780
ret = nathook->nat_callforwarding(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
796
static int process_setup(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
812
ret = expect_h245(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
820
nathook && nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
821
ct->status & IPS_NAT_MASK &&
net/netfilter/nf_conntrack_h323_main.c
822
get_h225_addr(ct, *data, &setup->destCallSignalAddress,
net/netfilter/nf_conntrack_h323_main.c
824
memcmp(&addr, &ct->tuplehash[!dir].tuple.src.u3, sizeof(addr))) {
net/netfilter/nf_conntrack_h323_main.c
826
&addr, ntohs(port), &ct->tuplehash[!dir].tuple.src.u3,
net/netfilter/nf_conntrack_h323_main.c
827
ntohs(ct->tuplehash[!dir].tuple.src.u.tcp.port));
net/netfilter/nf_conntrack_h323_main.c
830
&ct->tuplehash[!dir].tuple.src.u3,
net/netfilter/nf_conntrack_h323_main.c
831
ct->tuplehash[!dir].tuple.src.u.tcp.port);
net/netfilter/nf_conntrack_h323_main.c
837
nathook && nf_ct_l3num(ct) == NFPROTO_IPV4 &&
net/netfilter/nf_conntrack_h323_main.c
838
ct->status & IPS_NAT_MASK &&
net/netfilter/nf_conntrack_h323_main.c
839
get_h225_addr(ct, *data, &setup->sourceCallSignalAddress,
net/netfilter/nf_conntrack_h323_main.c
841
memcmp(&addr, &ct->tuplehash[!dir].tuple.dst.u3, sizeof(addr))) {
net/netfilter/nf_conntrack_h323_main.c
843
&addr, ntohs(port), &ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
844
ntohs(ct->tuplehash[!dir].tuple.dst.u.tcp.port));
net/netfilter/nf_conntrack_h323_main.c
847
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_conntrack_h323_main.c
848
ct->tuplehash[!dir].tuple.dst.u.tcp.port);
net/netfilter/nf_conntrack_h323_main.c
855
ret = process_olc(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
867
struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
879
ret = expect_h245(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
887
ret = process_olc(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
898
static int process_connect(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
910
ret = expect_h245(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
918
ret = process_olc(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
929
static int process_alerting(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
941
ret = expect_h245(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
949
ret = process_olc(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
960
static int process_facility(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_h323_main.c
973
return expect_callforwarding(skb, ct, ctinfo,
net/netfilter/nf_conntrack_h323_main.c
981
ret = expect_h245(skb, ct, ctinfo, protoff, data, dataoff,
net/netfilter/nf_conntrack_h323_main.c
989
ret = process_olc(skb, ct, ctinfo,
net/netfilter/nf_conntrack_helper.c
178
nf_ct_helper_ext_add(struct nf_conn *ct, gfp_t gfp)
net/netfilter/nf_conntrack_helper.c
182
help = nf_ct_ext_add(ct, NF_CT_EXT_HELPER, gfp);
net/netfilter/nf_conntrack_helper.c
191
int __nf_ct_try_assign_helper(struct nf_conn *ct, struct nf_conn *tmpl,
net/netfilter/nf_conntrack_helper.c
198
if (test_bit(IPS_HELPER_BIT, &ct->status))
net/netfilter/nf_conntrack_helper.c
207
set_bit(IPS_HELPER_BIT, &ct->status);
net/netfilter/nf_conntrack_helper.c
210
help = nfct_help(ct);
net/netfilter/nf_conntrack_helper.c
219
help = nf_ct_helper_ext_add(ct, flags);
net/netfilter/nf_conntrack_helper.c
241
static int unhelp(struct nf_conn *ct, void *me)
net/netfilter/nf_conntrack_helper.c
243
struct nf_conn_help *help = nfct_help(ct);
net/netfilter/nf_conntrack_helper.c
246
nf_conntrack_event(IPCT_HELPER, ct);
net/netfilter/nf_conntrack_helper.c
254
void nf_ct_helper_destroy(struct nf_conn *ct)
net/netfilter/nf_conntrack_helper.c
256
struct nf_conn_help *help = nfct_help(ct);
net/netfilter/nf_conntrack_helper.c
263
helper->destroy(ct);
net/netfilter/nf_conntrack_helper.c
321
void nf_ct_helper_log(struct sk_buff *skb, const struct nf_conn *ct,
net/netfilter/nf_conntrack_helper.c
335
help = nfct_help(ct);
net/netfilter/nf_conntrack_helper.c
340
nf_log_packet(nf_ct_net(ct), nf_ct_l3num(ct), 0, skb, NULL, NULL, NULL,
net/netfilter/nf_conntrack_helper.c
434
struct nf_conn *ct,
net/netfilter/nf_conntrack_helper.c
437
struct nf_conn *ct),
net/netfilter/nf_conntrack_irc.c
109
struct nf_conn *ct, enum ip_conntrack_info ctinfo)
net/netfilter/nf_conntrack_irc.c
219
tuple = &ct->tuplehash[dir].tuple;
net/netfilter/nf_conntrack_irc.c
221
ct->tuplehash[!dir].tuple.dst.u3.ip != dcc_ip) ||
net/netfilter/nf_conntrack_irc.c
229
exp = nf_ct_expect_alloc(ct);
net/netfilter/nf_conntrack_irc.c
231
nf_ct_helper_log(skb, ct,
net/netfilter/nf_conntrack_irc.c
236
tuple = &ct->tuplehash[!dir].tuple;
net/netfilter/nf_conntrack_irc.c
244
if (nf_nat_irc && ct->status & IPS_NAT_MASK)
net/netfilter/nf_conntrack_irc.c
250
nf_ct_helper_log(skb, ct,
net/netfilter/nf_conntrack_labels.c
28
int nf_connlabels_replace(struct nf_conn *ct,
net/netfilter/nf_conntrack_labels.c
37
labels = nf_ct_labels_find(ct);
net/netfilter/nf_conntrack_labels.c
54
nf_conntrack_event_cache(IPCT_LABEL, ct);
net/netfilter/nf_conntrack_labels.c
68
v = atomic_inc_return_relaxed(&net->ct.labels_used);
net/netfilter/nf_conntrack_labels.c
77
int v = atomic_dec_return_relaxed(&net->ct.labels_used);
net/netfilter/nf_conntrack_netbios_ns.c
41
struct nf_conn *ct,
net/netfilter/nf_conntrack_netbios_ns.c
44
return nf_conntrack_broadcast_help(skb, ct, ctinfo, timeout);
net/netfilter/nf_conntrack_netlink.c
1153
static int ctnetlink_filter_match(struct nf_conn *ct, void *data)
net/netfilter/nf_conntrack_netlink.c
1166
if (filter->family && nf_ct_l3num(ct) != filter->family)
net/netfilter/nf_conntrack_netlink.c
1170
!nf_ct_zone_equal_any(ct, &filter->zone))
net/netfilter/nf_conntrack_netlink.c
1174
tuple = nf_ct_tuple(ct, IP_CT_DIR_ORIGINAL);
net/netfilter/nf_conntrack_netlink.c
1182
tuple = nf_ct_tuple(ct, IP_CT_DIR_REPLY);
net/netfilter/nf_conntrack_netlink.c
1190
if ((READ_ONCE(ct->mark) & filter->mark.mask) != filter->mark.val)
net/netfilter/nf_conntrack_netlink.c
1193
status = (u32)READ_ONCE(ct->status);
net/netfilter/nf_conntrack_netlink.c
1204
static unsigned long ctnetlink_get_id(const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
1206
unsigned long id = nf_ct_get_id(ct);
net/netfilter/nf_conntrack_netlink.c
1220
struct nf_conn *ct;
net/netfilter/nf_conntrack_netlink.c
1244
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_netlink.c
1245
if (nf_ct_is_expired(ct)) {
net/netfilter/nf_conntrack_netlink.c
1248
refcount_inc_not_zero(&ct->ct_general.use))
net/netfilter/nf_conntrack_netlink.c
1249
nf_ct_evict[i++] = ct;
net/netfilter/nf_conntrack_netlink.c
1253
if (!net_eq(net, nf_ct_net(ct)))
net/netfilter/nf_conntrack_netlink.c
1260
if (ctnetlink_get_id(ct) != last_id)
net/netfilter/nf_conntrack_netlink.c
1264
if (!ctnetlink_filter_match(ct, cb->data))
net/netfilter/nf_conntrack_netlink.c
1271
ct, true, flags);
net/netfilter/nf_conntrack_netlink.c
1273
cb->args[1] = ctnetlink_get_id(ct);
net/netfilter/nf_conntrack_netlink.c
1584
static int ctnetlink_flush_iterate(struct nf_conn *ct, void *data)
net/netfilter/nf_conntrack_netlink.c
1586
return ctnetlink_filter_match(ct, data);
net/netfilter/nf_conntrack_netlink.c
1622
struct nf_conn *ct;
net/netfilter/nf_conntrack_netlink.c
1650
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_netlink.c
1655
if (id != (__force __be32)nf_ct_get_id(ct)) {
net/netfilter/nf_conntrack_netlink.c
1656
nf_ct_put(ct);
net/netfilter/nf_conntrack_netlink.c
1661
nf_ct_delete(ct, NETLINK_CB(skb).portid, nlmsg_report(info->nlh));
net/netfilter/nf_conntrack_netlink.c
1662
nf_ct_put(ct);
net/netfilter/nf_conntrack_netlink.c
1676
struct nf_conn *ct;
net/netfilter/nf_conntrack_netlink.c
168
static int ctnetlink_dump_status(struct sk_buff *skb, const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
170
if (nla_put_be32(skb, CTA_STATUS, htonl(ct->status)))
net/netfilter/nf_conntrack_netlink.c
1710
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_netlink.c
1714
nf_ct_put(ct);
net/netfilter/nf_conntrack_netlink.c
1720
NFNL_MSG_TYPE(info->nlh->nlmsg_type), ct,
net/netfilter/nf_conntrack_netlink.c
1722
nf_ct_put(ct);
net/netfilter/nf_conntrack_netlink.c
1734
struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
1742
if (l3proto && nf_ct_l3num(ct) != l3proto)
net/netfilter/nf_conntrack_netlink.c
1746
if (ctnetlink_get_id(ct) != ctx->last_id)
net/netfilter/nf_conntrack_netlink.c
1762
ct, dying, 0);
net/netfilter/nf_conntrack_netlink.c
1764
ctx->last_id = ctnetlink_get_id(ct);
net/netfilter/nf_conntrack_netlink.c
178
static int ctnetlink_dump_timeout(struct sk_buff *skb, const struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
1798
struct nf_conn *ct;
net/netfilter/nf_conntrack_netlink.c
1801
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_netlink.c
1802
if (last_id && last_id != ctnetlink_get_id(ct))
net/netfilter/nf_conntrack_netlink.c
1805
res = ctnetlink_dump_one_entry(skb, cb, ct, true);
net/netfilter/nf_conntrack_netlink.c
183
if (nf_ct_is_confirmed(ct))
net/netfilter/nf_conntrack_netlink.c
184
timeout = nf_ct_expires(ct) / HZ;
net/netfilter/nf_conntrack_netlink.c
1851
ctnetlink_parse_nat_setup(struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
186
timeout = ct->timeout / HZ;
net/netfilter/nf_conntrack_netlink.c
1878
err = nat_hook->parse_nat_setup(ct, manip, attr);
net/netfilter/nf_conntrack_netlink.c
1883
if (request_module("nf-nat-%u", nf_ct_l3num(ct)) < 0) {
net/netfilter/nf_conntrack_netlink.c
1899
ctnetlink_change_status(struct nf_conn *ct, const struct nlattr * const cda[])
net/netfilter/nf_conntrack_netlink.c
1901
return nf_ct_change_status_common(ct, ntohl(nla_get_be32(cda[CTA_STATUS])));
net/netfilter/nf_conntrack_netlink.c
1905
ctnetlink_setup_nat(struct nf_conn *ct, const struct nlattr * const cda[])
net/netfilter/nf_conntrack_netlink.c
1913
ret = ctnetlink_parse_nat_setup(ct, NF_NAT_MANIP_DST,
net/netfilter/nf_conntrack_netlink.c
1918
return ctnetlink_parse_nat_setup(ct, NF_NAT_MANIP_SRC,
net/netfilter/nf_conntrack_netlink.c
1927
static int ctnetlink_change_helper(struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
1931
struct nf_conn_help *help = nfct_help(ct);
net/netfilter/nf_conntrack_netlink.c
1941
if (ct->master) {
net/netfilter/nf_conntrack_netlink.c
1961
nf_ct_remove_expectations(ct);
net/netfilter/nf_conntrack_netlink.c
1969
helper = __nf_conntrack_helper_find(helpname, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_netlink.c
1970
nf_ct_protonum(ct));
net/netfilter/nf_conntrack_netlink.c
1980
helper->from_nlattr(helpinfo, ct);
net/netfilter/nf_conntrack_netlink.c
199
static int ctnetlink_dump_protoinfo(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
1993
static int ctnetlink_change_timeout(struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
1996
return __nf_ct_change_timeout(ct, (u64)ntohl(nla_get_be32(cda[CTA_TIMEOUT])) * HZ);
net/netfilter/nf_conntrack_netlink.c
2000
static void ctnetlink_change_mark(struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
2009
newmark = (READ_ONCE(ct->mark) & mask) ^ mark;
net/netfilter/nf_conntrack_netlink.c
2010
if (newmark != READ_ONCE(ct->mark))
net/netfilter/nf_conntrack_netlink.c
2011
WRITE_ONCE(ct->mark, newmark);
net/netfilter/nf_conntrack_netlink.c
2020
static int ctnetlink_change_protoinfo(struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
2033
l4proto = nf_ct_l4proto_find(nf_ct_protonum(ct));
net/netfilter/nf_conntrack_netlink.c
2035
err = l4proto->from_nlattr(tb, ct);
net/netfilter/nf_conntrack_netlink.c
206
l4proto = nf_ct_l4proto_find(nf_ct_protonum(ct));
net/netfilter/nf_conntrack_netlink.c
2079
ctnetlink_change_seq_adj(struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
2082
struct nf_conn_seqadj *seqadj = nfct_seqadj(ct);
net/netfilter/nf_conntrack_netlink.c
2088
spin_lock_bh(&ct->lock);
net/netfilter/nf_conntrack_netlink.c
2095
set_bit(IPS_SEQ_ADJUST_BIT, &ct->status);
net/netfilter/nf_conntrack_netlink.c
2104
set_bit(IPS_SEQ_ADJUST_BIT, &ct->status);
net/netfilter/nf_conntrack_netlink.c
2107
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_netlink.c
2110
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_netlink.c
2120
static int ctnetlink_change_synproxy(struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
2123
struct nf_conn_synproxy *synproxy = nfct_synproxy(ct);
net/netfilter/nf_conntrack_netlink.c
214
ret = l4proto->to_nlattr(skb, nest_proto, ct, destroy);
net/netfilter/nf_conntrack_netlink.c
2149
ctnetlink_attach_labels(struct nf_conn *ct, const struct nlattr * const cda[])
net/netfilter/nf_conntrack_netlink.c
2167
return nf_connlabels_replace(ct, nla_data(cda[CTA_LABELS]), mask, len);
net/netfilter/nf_conntrack_netlink.c
2174
ctnetlink_change_conntrack(struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
2184
err = ctnetlink_change_helper(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2190
err = ctnetlink_change_timeout(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2196
err = ctnetlink_change_status(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2202
err = ctnetlink_change_protoinfo(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2209
ctnetlink_change_mark(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2213
err = ctnetlink_change_seq_adj(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2219
err = ctnetlink_change_synproxy(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2225
err = ctnetlink_attach_labels(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2241
struct nf_conn *ct;
net/netfilter/nf_conntrack_netlink.c
2247
ct = nf_conntrack_alloc(net, zone, otuple, rtuple, GFP_ATOMIC);
net/netfilter/nf_conntrack_netlink.c
2248
if (IS_ERR(ct))
net/netfilter/nf_conntrack_netlink.c
225
const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
2263
helper = __nf_conntrack_helper_find(helpname, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_netlink.c
2264
nf_ct_protonum(ct));
net/netfilter/nf_conntrack_netlink.c
2275
nf_ct_l3num(ct),
net/netfilter/nf_conntrack_netlink.c
2276
nf_ct_protonum(ct));
net/netfilter/nf_conntrack_netlink.c
228
const struct nf_conn_help *help = nfct_help(ct);
net/netfilter/nf_conntrack_netlink.c
2288
help = nf_ct_helper_ext_add(ct, GFP_ATOMIC);
net/netfilter/nf_conntrack_netlink.c
2295
helper->from_nlattr(helpinfo, ct);
net/netfilter/nf_conntrack_netlink.c
2298
ct->status |= IPS_HELPER;
net/netfilter/nf_conntrack_netlink.c
2303
err = ctnetlink_setup_nat(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2307
nf_ct_acct_ext_add(ct, GFP_ATOMIC);
net/netfilter/nf_conntrack_netlink.c
2308
nf_ct_tstamp_ext_add(ct, GFP_ATOMIC);
net/netfilter/nf_conntrack_netlink.c
2309
nf_ct_ecache_ext_add(ct, 0, 0, GFP_ATOMIC);
net/netfilter/nf_conntrack_netlink.c
2310
nf_ct_labels_ext_add(ct);
net/netfilter/nf_conntrack_netlink.c
2311
nfct_seqadj_ext_add(ct);
net/netfilter/nf_conntrack_netlink.c
2312
nfct_synproxy_ext_add(ct);
net/netfilter/nf_conntrack_netlink.c
2315
ct->status |= IPS_CONFIRMED;
net/netfilter/nf_conntrack_netlink.c
2318
__nf_ct_set_timeout(ct, timeout);
net/netfilter/nf_conntrack_netlink.c
2321
err = ctnetlink_change_status(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2327
err = ctnetlink_change_seq_adj(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2332
memset(&ct->proto, 0, sizeof(ct->proto));
net/netfilter/nf_conntrack_netlink.c
2334
err = ctnetlink_change_protoinfo(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2340
err = ctnetlink_change_synproxy(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2347
ctnetlink_change_mark(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2367
__set_bit(IPS_EXPECTED_BIT, &ct->status);
net/netfilter/nf_conntrack_netlink.c
2368
ct->master = master_ct;
net/netfilter/nf_conntrack_netlink.c
2370
tstamp = nf_conn_tstamp_find(ct);
net/netfilter/nf_conntrack_netlink.c
2374
err = nf_conntrack_hash_check_insert(ct);
net/netfilter/nf_conntrack_netlink.c
2380
return ct;
net/netfilter/nf_conntrack_netlink.c
2383
if (ct->master)
net/netfilter/nf_conntrack_netlink.c
2384
nf_ct_put(ct->master);
net/netfilter/nf_conntrack_netlink.c
2388
nf_conntrack_free(ct);
net/netfilter/nf_conntrack_netlink.c
2400
struct nf_conn *ct;
net/netfilter/nf_conntrack_netlink.c
2436
ct = ctnetlink_create_conntrack(info->net, &zone, cda,
net/netfilter/nf_conntrack_netlink.c
2438
if (IS_ERR(ct))
net/netfilter/nf_conntrack_netlink.c
2439
return PTR_ERR(ct);
net/netfilter/nf_conntrack_netlink.c
2442
if (test_bit(IPS_EXPECTED_BIT, &ct->status))
net/netfilter/nf_conntrack_netlink.c
2448
ctnetlink_attach_labels(ct, cda) == 0)
net/netfilter/nf_conntrack_netlink.c
2459
ct, NETLINK_CB(skb).portid,
net/netfilter/nf_conntrack_netlink.c
246
helper->to_nlattr(skb, ct);
net/netfilter/nf_conntrack_netlink.c
2461
nf_ct_put(ct);
net/netfilter/nf_conntrack_netlink.c
2469
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_netlink.c
2471
err = ctnetlink_change_conntrack(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2481
ct, NETLINK_CB(skb).portid,
net/netfilter/nf_conntrack_netlink.c
2486
nf_ct_put(ct);
net/netfilter/nf_conntrack_netlink.c
2544
st = per_cpu_ptr(net->ct.stat, cpu);
net/netfilter/nf_conntrack_netlink.c
2638
ctnetlink_alloc_expect(const struct nlattr *const cda[], struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
2644
ctnetlink_glue_build_size(const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
2656
+ ctnetlink_secctx_size(ct)
net/netfilter/nf_conntrack_netlink.c
2657
+ ctnetlink_acct_size(ct)
net/netfilter/nf_conntrack_netlink.c
2658
+ ctnetlink_timestamp_size(ct)
net/netfilter/nf_conntrack_netlink.c
2669
+ ctnetlink_proto_size(ct)
net/netfilter/nf_conntrack_netlink.c
2673
static int __ctnetlink_glue_build(struct sk_buff *skb, struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
2678
zone = nf_ct_zone(ct);
net/netfilter/nf_conntrack_netlink.c
2683
if (ctnetlink_dump_tuples(skb, nf_ct_tuple(ct, IP_CT_DIR_ORIGINAL)) < 0)
net/netfilter/nf_conntrack_netlink.c
2693
if (ctnetlink_dump_tuples(skb, nf_ct_tuple(ct, IP_CT_DIR_REPLY)) < 0)
net/netfilter/nf_conntrack_netlink.c
2704
if (ctnetlink_dump_id(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
2707
if (ctnetlink_dump_status(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
2710
if (ctnetlink_dump_timeout(skb, ct, false) < 0)
net/netfilter/nf_conntrack_netlink.c
2713
if (ctnetlink_dump_protoinfo(skb, ct, false) < 0)
net/netfilter/nf_conntrack_netlink.c
2716
if (ctnetlink_dump_acct(skb, ct, IPCTNL_MSG_CT_GET) < 0 ||
net/netfilter/nf_conntrack_netlink.c
2717
ctnetlink_dump_timestamp(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
2720
if (ctnetlink_dump_helpinfo(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
2724
if (ct->secmark && ctnetlink_dump_secctx(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
2727
if (ct->master && ctnetlink_dump_master(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
2730
if ((ct->status & IPS_SEQ_ADJUST) &&
net/netfilter/nf_conntrack_netlink.c
2731
ctnetlink_dump_ct_seq_adj(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
2734
if (ctnetlink_dump_ct_synproxy(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
2738
if (ctnetlink_dump_mark(skb, ct, true) < 0)
net/netfilter/nf_conntrack_netlink.c
2741
if (ctnetlink_dump_labels(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
2750
ctnetlink_glue_build(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
2760
if (__ctnetlink_glue_build(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
2775
ctnetlink_update_status(struct nf_conn *ct, const struct nlattr * const cda[])
net/netfilter/nf_conntrack_netlink.c
2778
unsigned long d = ct->status ^ status;
net/netfilter/nf_conntrack_netlink.c
2794
__nf_ct_change_status(ct, status, ~status);
net/netfilter/nf_conntrack_netlink.c
2799
ctnetlink_glue_parse_ct(const struct nlattr *cda[], struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
2804
err = ctnetlink_change_timeout(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2809
err = ctnetlink_update_status(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2814
err = ctnetlink_change_helper(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2819
err = ctnetlink_attach_labels(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2825
ctnetlink_change_mark(ct, cda);
net/netfilter/nf_conntrack_netlink.c
2832
ctnetlink_glue_parse(const struct nlattr *attr, struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
2842
return ctnetlink_glue_parse_ct((const struct nlattr **)cda, ct);
net/netfilter/nf_conntrack_netlink.c
2846
const struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
2853
nf_ct_l3num(ct), NULL);
net/netfilter/nf_conntrack_netlink.c
2858
nf_ct_l3num(ct), NULL);
net/netfilter/nf_conntrack_netlink.c
2862
ctnetlink_glue_attach_expect(const struct nlattr *attr, struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
2876
ct, &tuple, &mask);
net/netfilter/nf_conntrack_netlink.c
2880
exp = ctnetlink_alloc_expect((const struct nlattr * const *)cda, ct,
net/netfilter/nf_conntrack_netlink.c
2890
static void ctnetlink_glue_seqadj(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
2893
if (!(ct->status & IPS_NAT_MASK))
net/netfilter/nf_conntrack_netlink.c
2896
nf_ct_tcp_seqadj_set(skb, ct, ctinfo, diff);
net/netfilter/nf_conntrack_netlink.c
294
ctnetlink_dump_acct(struct sk_buff *skb, const struct nf_conn *ct, int type)
net/netfilter/nf_conntrack_netlink.c
296
struct nf_conn_acct *acct = nf_conn_acct_find(ct);
net/netfilter/nf_conntrack_netlink.c
310
ctnetlink_dump_timestamp(struct sk_buff *skb, const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
315
tstamp = nf_conn_tstamp_find(ct);
net/netfilter/nf_conntrack_netlink.c
3194
struct nf_conn *ct = cb->data;
net/netfilter/nf_conntrack_netlink.c
3203
help = nfct_help(ct);
net/netfilter/nf_conntrack_netlink.c
3238
struct nf_conn *ct = cb->data;
net/netfilter/nf_conntrack_netlink.c
3240
if (!refcount_inc_not_zero(&ct->ct_general.use))
net/netfilter/nf_conntrack_netlink.c
3247
struct nf_conn *ct = cb->data;
net/netfilter/nf_conntrack_netlink.c
3249
if (ct)
net/netfilter/nf_conntrack_netlink.c
3250
nf_ct_put(ct);
net/netfilter/nf_conntrack_netlink.c
3265
struct nf_conn *ct;
net/netfilter/nf_conntrack_netlink.c
3286
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_netlink.c
3288
if (!nfct_help(ct)) {
net/netfilter/nf_conntrack_netlink.c
3289
nf_ct_put(ct);
net/netfilter/nf_conntrack_netlink.c
3293
c.data = ct;
net/netfilter/nf_conntrack_netlink.c
3296
nf_ct_put(ct);
net/netfilter/nf_conntrack_netlink.c
338
static int ctnetlink_dump_mark(struct sk_buff *skb, const struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
341
u32 mark = READ_ONCE(ct->mark);
net/netfilter/nf_conntrack_netlink.c
3519
ctnetlink_alloc_expect(const struct nlattr * const cda[], struct nf_conn *ct,
net/netfilter/nf_conntrack_netlink.c
3523
struct net *net = read_pnet(&ct->ct_net);
net/netfilter/nf_conntrack_netlink.c
3530
help = nfct_help(ct);
net/netfilter/nf_conntrack_netlink.c
3543
exp = nf_ct_expect_alloc(ct);
net/netfilter/nf_conntrack_netlink.c
3567
exp->master = ct;
net/netfilter/nf_conntrack_netlink.c
3570
exp->zone = ct->zone;
net/netfilter/nf_conntrack_netlink.c
3579
exp, nf_ct_l3num(ct));
net/netfilter/nf_conntrack_netlink.c
358
static int ctnetlink_dump_secctx(struct sk_buff *skb, const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
3604
struct nf_conn *ct;
net/netfilter/nf_conntrack_netlink.c
3625
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_netlink.c
3628
exp = ctnetlink_alloc_expect(cda, ct, &tuple, &mask);
net/netfilter/nf_conntrack_netlink.c
3638
nf_ct_put(ct);
net/netfilter/nf_conntrack_netlink.c
364
ret = security_secid_to_secctx(ct->secmark, &ctx);
net/netfilter/nf_conntrack_netlink.c
3731
st = per_cpu_ptr(net->ct.stat, cpu);
net/netfilter/nf_conntrack_netlink.c
388
ctnetlink_dump_event_timestamp(struct sk_buff *skb, const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
391
const struct nf_conntrack_ecache *e = nf_ct_ecache_find(ct);
net/netfilter/nf_conntrack_netlink.c
404
static inline int ctnetlink_label_size(const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
406
struct nf_conn_labels *labels = nf_ct_labels_find(ct);
net/netfilter/nf_conntrack_netlink.c
415
ctnetlink_dump_labels(struct sk_buff *skb, const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
417
struct nf_conn_labels *labels = nf_ct_labels_find(ct);
net/netfilter/nf_conntrack_netlink.c
434
#define master_tuple(ct) &(ct->master->tuplehash[IP_CT_DIR_ORIGINAL].tuple)
net/netfilter/nf_conntrack_netlink.c
436
static int ctnetlink_dump_master(struct sk_buff *skb, const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
440
if (!(ct->status & IPS_EXPECTED))
net/netfilter/nf_conntrack_netlink.c
446
if (ctnetlink_dump_tuples(skb, master_tuple(ct)) < 0)
net/netfilter/nf_conntrack_netlink.c
481
static int ctnetlink_dump_ct_seq_adj(struct sk_buff *skb, struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
483
struct nf_conn_seqadj *seqadj = nfct_seqadj(ct);
net/netfilter/nf_conntrack_netlink.c
486
if (!(ct->status & IPS_SEQ_ADJUST) || !seqadj)
net/netfilter/nf_conntrack_netlink.c
489
spin_lock_bh(&ct->lock);
net/netfilter/nf_conntrack_netlink.c
498
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_netlink.c
501
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_netlink.c
505
static int ctnetlink_dump_ct_synproxy(struct sk_buff *skb, struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
507
struct nf_conn_synproxy *synproxy = nfct_synproxy(ct);
net/netfilter/nf_conntrack_netlink.c
530
static int ctnetlink_dump_id(struct sk_buff *skb, const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
532
__be32 id = (__force __be32)nf_ct_get_id(ct);
net/netfilter/nf_conntrack_netlink.c
542
static int ctnetlink_dump_use(struct sk_buff *skb, const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
544
if (nla_put_be32(skb, CTA_USE, htonl(refcount_read(&ct->ct_general.use))))
net/netfilter/nf_conntrack_netlink.c
557
struct nf_conn *ct, u32 type)
net/netfilter/nf_conntrack_netlink.c
559
if (ctnetlink_dump_acct(skb, ct, type) < 0 ||
net/netfilter/nf_conntrack_netlink.c
560
ctnetlink_dump_timestamp(skb, ct) < 0 ||
net/netfilter/nf_conntrack_netlink.c
561
ctnetlink_dump_helpinfo(skb, ct) < 0 ||
net/netfilter/nf_conntrack_netlink.c
562
ctnetlink_dump_labels(skb, ct) < 0 ||
net/netfilter/nf_conntrack_netlink.c
563
ctnetlink_dump_ct_seq_adj(skb, ct) < 0 ||
net/netfilter/nf_conntrack_netlink.c
564
ctnetlink_dump_ct_synproxy(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
570
static int ctnetlink_dump_info(struct sk_buff *skb, struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
572
if (ctnetlink_dump_status(skb, ct) < 0 ||
net/netfilter/nf_conntrack_netlink.c
573
ctnetlink_dump_mark(skb, ct, true) < 0 ||
net/netfilter/nf_conntrack_netlink.c
574
ctnetlink_dump_secctx(skb, ct) < 0 ||
net/netfilter/nf_conntrack_netlink.c
575
ctnetlink_dump_id(skb, ct) < 0 ||
net/netfilter/nf_conntrack_netlink.c
576
ctnetlink_dump_use(skb, ct) < 0 ||
net/netfilter/nf_conntrack_netlink.c
577
ctnetlink_dump_master(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
580
if (!test_bit(IPS_OFFLOAD_BIT, &ct->status) &&
net/netfilter/nf_conntrack_netlink.c
581
(ctnetlink_dump_timeout(skb, ct, false) < 0 ||
net/netfilter/nf_conntrack_netlink.c
582
ctnetlink_dump_protoinfo(skb, ct, false) < 0))
net/netfilter/nf_conntrack_netlink.c
590
struct nf_conn *ct, bool extinfo, unsigned int flags)
net/netfilter/nf_conntrack_netlink.c
600
nlh = nfnl_msg_put(skb, portid, seq, event, flags, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_netlink.c
605
zone = nf_ct_zone(ct);
net/netfilter/nf_conntrack_netlink.c
610
if (ctnetlink_dump_tuples(skb, nf_ct_tuple(ct, IP_CT_DIR_ORIGINAL)) < 0)
net/netfilter/nf_conntrack_netlink.c
620
if (ctnetlink_dump_tuples(skb, nf_ct_tuple(ct, IP_CT_DIR_REPLY)) < 0)
net/netfilter/nf_conntrack_netlink.c
631
if (ctnetlink_dump_info(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
633
if (extinfo && ctnetlink_dump_extinfo(skb, ct, type) < 0)
net/netfilter/nf_conntrack_netlink.c
653
static size_t ctnetlink_proto_size(const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
661
l4proto = nf_ct_l4proto_find(nf_ct_protonum(ct));
net/netfilter/nf_conntrack_netlink.c
671
static inline size_t ctnetlink_acct_size(const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
673
if (!nf_ct_ext_exist(ct, NF_CT_EXT_ACCT))
net/netfilter/nf_conntrack_netlink.c
681
static inline int ctnetlink_secctx_size(const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
686
ret = security_secid_to_secctx(ct->secmark, NULL);
net/netfilter/nf_conntrack_netlink.c
697
static inline size_t ctnetlink_timestamp_size(const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
700
if (!nf_ct_ext_exist(ct, NF_CT_EXT_TSTAMP))
net/netfilter/nf_conntrack_netlink.c
710
static size_t ctnetlink_nlmsg_size(const struct nf_conn *ct)
net/netfilter/nf_conntrack_netlink.c
719
+ ctnetlink_acct_size(ct)
net/netfilter/nf_conntrack_netlink.c
720
+ ctnetlink_timestamp_size(ct)
net/netfilter/nf_conntrack_netlink.c
725
+ ctnetlink_secctx_size(ct)
net/netfilter/nf_conntrack_netlink.c
736
+ ctnetlink_proto_size(ct)
net/netfilter/nf_conntrack_netlink.c
737
+ ctnetlink_label_size(ct)
net/netfilter/nf_conntrack_netlink.c
751
struct nf_conn *ct = item->ct;
net/netfilter/nf_conntrack_netlink.c
770
net = nf_ct_net(ct);
net/netfilter/nf_conntrack_netlink.c
774
skb = nlmsg_new(ctnetlink_nlmsg_size(ct), GFP_ATOMIC);
net/netfilter/nf_conntrack_netlink.c
779
nlh = nfnl_msg_put(skb, item->portid, 0, type, flags, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_netlink.c
784
zone = nf_ct_zone(ct);
net/netfilter/nf_conntrack_netlink.c
789
if (ctnetlink_dump_tuples(skb, nf_ct_tuple(ct, IP_CT_DIR_ORIGINAL)) < 0)
net/netfilter/nf_conntrack_netlink.c
799
if (ctnetlink_dump_tuples(skb, nf_ct_tuple(ct, IP_CT_DIR_REPLY)) < 0)
net/netfilter/nf_conntrack_netlink.c
810
if (ctnetlink_dump_id(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
813
if (ctnetlink_dump_status(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
817
if (ctnetlink_dump_timeout(skb, ct, true) < 0)
net/netfilter/nf_conntrack_netlink.c
820
if (ctnetlink_dump_acct(skb, ct, type) < 0 ||
net/netfilter/nf_conntrack_netlink.c
821
ctnetlink_dump_timestamp(skb, ct) < 0 ||
net/netfilter/nf_conntrack_netlink.c
822
ctnetlink_dump_protoinfo(skb, ct, true) < 0)
net/netfilter/nf_conntrack_netlink.c
825
if (ctnetlink_dump_timeout(skb, ct, false) < 0)
net/netfilter/nf_conntrack_netlink.c
829
ctnetlink_dump_protoinfo(skb, ct, false) < 0)
net/netfilter/nf_conntrack_netlink.c
832
if ((events & (1 << IPCT_HELPER) || nfct_help(ct))
net/netfilter/nf_conntrack_netlink.c
833
&& ctnetlink_dump_helpinfo(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
837
if ((events & (1 << IPCT_SECMARK) || ct->secmark)
net/netfilter/nf_conntrack_netlink.c
838
&& ctnetlink_dump_secctx(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
842
ctnetlink_dump_labels(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
846
ctnetlink_dump_master(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
850
ctnetlink_dump_ct_seq_adj(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
854
ctnetlink_dump_ct_synproxy(skb, ct) < 0)
net/netfilter/nf_conntrack_netlink.c
859
if (ctnetlink_dump_mark(skb, ct, events & (1 << IPCT_MARK)))
net/netfilter/nf_conntrack_netlink.c
863
if (ctnetlink_dump_event_timestamp(skb, ct))
net/netfilter/nf_conntrack_ovs.c
12
int nf_ct_helper(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_ovs.c
23
help = nfct_help(ct);
net/netfilter/nf_conntrack_ovs.c
63
err = helper->help(skb, protoff, ct, ctinfo);
net/netfilter/nf_conntrack_ovs.c
71
if (test_bit(IPS_SEQ_ADJUST_BIT, &ct->status) &&
net/netfilter/nf_conntrack_ovs.c
72
!nf_ct_seq_adjust(skb, ct, ctinfo, protoff))
net/netfilter/nf_conntrack_ovs.c
78
int nf_ct_add_helper(struct nf_conn *ct, const char *name, u8 family,
net/netfilter/nf_conntrack_ovs.c
89
help = nf_ct_helper_ext_add(ct, GFP_KERNEL);
net/netfilter/nf_conntrack_pptp.c
104
if (hook && ct->master->status & IPS_NAT_MASK)
net/netfilter/nf_conntrack_pptp.c
105
hook->expectfn(ct, exp);
net/netfilter/nf_conntrack_pptp.c
115
exp_other = nf_ct_expect_find_get(net, nf_ct_zone(ct), &inv_t);
net/netfilter/nf_conntrack_pptp.c
127
static int destroy_sibling_or_exp(struct net *net, struct nf_conn *ct,
net/netfilter/nf_conntrack_pptp.c
138
zone = nf_ct_zone(ct);
net/netfilter/nf_conntrack_pptp.c
161
static void pptp_destroy_siblings(struct nf_conn *ct)
net/netfilter/nf_conntrack_pptp.c
163
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_pptp.c
164
const struct nf_ct_pptp_master *ct_pptp_info = nfct_help_data(ct);
net/netfilter/nf_conntrack_pptp.c
167
nf_ct_gre_keymap_destroy(ct);
net/netfilter/nf_conntrack_pptp.c
170
memcpy(&t, &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple, sizeof(t));
net/netfilter/nf_conntrack_pptp.c
174
if (!destroy_sibling_or_exp(net, ct, &t))
net/netfilter/nf_conntrack_pptp.c
178
memcpy(&t, &ct->tuplehash[IP_CT_DIR_REPLY].tuple, sizeof(t));
net/netfilter/nf_conntrack_pptp.c
182
if (!destroy_sibling_or_exp(net, ct, &t))
net/netfilter/nf_conntrack_pptp.c
187
static int exp_gre(struct nf_conn *ct, __be16 callid, __be16 peer_callid)
net/netfilter/nf_conntrack_pptp.c
194
exp_orig = nf_ct_expect_alloc(ct);
net/netfilter/nf_conntrack_pptp.c
198
exp_reply = nf_ct_expect_alloc(ct);
net/netfilter/nf_conntrack_pptp.c
205
nf_ct_l3num(ct),
net/netfilter/nf_conntrack_pptp.c
206
&ct->tuplehash[dir].tuple.src.u3,
net/netfilter/nf_conntrack_pptp.c
207
&ct->tuplehash[dir].tuple.dst.u3,
net/netfilter/nf_conntrack_pptp.c
214
nf_ct_l3num(ct),
net/netfilter/nf_conntrack_pptp.c
215
&ct->tuplehash[dir].tuple.src.u3,
net/netfilter/nf_conntrack_pptp.c
216
&ct->tuplehash[dir].tuple.dst.u3,
net/netfilter/nf_conntrack_pptp.c
221
if (hook && ct->status & IPS_NAT_MASK)
net/netfilter/nf_conntrack_pptp.c
229
if (nf_ct_gre_keymap_add(ct, IP_CT_DIR_ORIGINAL, &exp_orig->tuple) != 0)
net/netfilter/nf_conntrack_pptp.c
231
if (nf_ct_gre_keymap_add(ct, IP_CT_DIR_REPLY, &exp_reply->tuple) != 0) {
net/netfilter/nf_conntrack_pptp.c
232
nf_ct_gre_keymap_destroy(ct);
net/netfilter/nf_conntrack_pptp.c
256
struct nf_conn *ct,
net/netfilter/nf_conntrack_pptp.c
259
struct nf_ct_pptp_master *info = nfct_help_data(ct);
net/netfilter/nf_conntrack_pptp.c
306
exp_gre(ct, cid, pcid);
net/netfilter/nf_conntrack_pptp.c
340
exp_gre(ct, cid, pcid);
net/netfilter/nf_conntrack_pptp.c
350
pptp_destroy_siblings(ct);
net/netfilter/nf_conntrack_pptp.c
365
if (hook && ct->status & IPS_NAT_MASK)
net/netfilter/nf_conntrack_pptp.c
366
return hook->inbound(skb, ct, ctinfo, protoff, ctlh, pptpReq);
net/netfilter/nf_conntrack_pptp.c
383
struct nf_conn *ct,
net/netfilter/nf_conntrack_pptp.c
386
struct nf_ct_pptp_master *info = nfct_help_data(ct);
net/netfilter/nf_conntrack_pptp.c
460
if (hook && ct->status & IPS_NAT_MASK)
net/netfilter/nf_conntrack_pptp.c
461
return hook->outbound(skb, ct, ctinfo, protoff, ctlh, pptpReq);
net/netfilter/nf_conntrack_pptp.c
492
struct nf_conn *ct, enum ip_conntrack_info ctinfo)
net/netfilter/nf_conntrack_pptp.c
496
const struct nf_ct_pptp_master *info = nfct_help_data(ct);
net/netfilter/nf_conntrack_pptp.c
510
if (!nf_ct_is_confirmed(ct) && (ct->status & IPS_NAT_MASK)) {
net/netfilter/nf_conntrack_pptp.c
511
struct nf_conn_nat *nat = nf_ct_ext_find(ct, NF_CT_EXT_NAT);
net/netfilter/nf_conntrack_pptp.c
513
if (!nat && !nf_ct_ext_add(ct, NF_CT_EXT_NAT, GFP_ATOMIC))
net/netfilter/nf_conntrack_pptp.c
570
ret = pptp_outbound_pkt(skb, protoff, ctlh, pptpReq, reqlen, ct,
net/netfilter/nf_conntrack_pptp.c
574
ret = pptp_inbound_pkt(skb, protoff, ctlh, pptpReq, reqlen, ct,
net/netfilter/nf_conntrack_pptp.c
89
static void pptp_expectfn(struct nf_conn *ct,
net/netfilter/nf_conntrack_pptp.c
93
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_pptp.c
97
ct->proto.gre.timeout = PPTP_GRE_TIMEOUT;
net/netfilter/nf_conntrack_pptp.c
98
ct->proto.gre.stream_timeout = PPTP_GRE_STREAM_TIMEOUT;
net/netfilter/nf_conntrack_proto.c
138
struct nf_conn *ct;
net/netfilter/nf_conntrack_proto.c
144
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_proto.c
145
if (!ct || in_vrf_postrouting(state))
net/netfilter/nf_conntrack_proto.c
148
help = nfct_help(ct);
net/netfilter/nf_conntrack_proto.c
150
seqadj_needed = test_bit(IPS_SEQ_ADJUST_BIT, &ct->status) && !nf_is_loopback_packet(skb);
net/netfilter/nf_conntrack_proto.c
158
switch (nf_ct_l3num(ct)) {
net/netfilter/nf_conntrack_proto.c
183
ct, ctinfo);
net/netfilter/nf_conntrack_proto.c
190
!nf_ct_seq_adjust(skb, ct, ctinfo, protoff)) {
net/netfilter/nf_conntrack_proto.c
191
NF_CT_STAT_INC_ATOMIC(nf_ct_net(ct), drop);
net/netfilter/nf_conntrack_proto.c
293
struct nf_conn *ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_proto.c
296
sin.sin_port = ct->tuplehash[IP_CT_DIR_ORIGINAL]
net/netfilter/nf_conntrack_proto.c
298
sin.sin_addr.s_addr = ct->tuplehash[IP_CT_DIR_ORIGINAL]
net/netfilter/nf_conntrack_proto.c
302
nf_ct_put(ct);
net/netfilter/nf_conntrack_proto.c
328
struct nf_conn *ct;
net/netfilter/nf_conntrack_proto.c
353
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_proto.c
356
sin6.sin6_port = ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.dst.u.tcp.port;
net/netfilter/nf_conntrack_proto.c
359
&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.dst.u3.in6,
net/netfilter/nf_conntrack_proto.c
362
nf_ct_put(ct);
net/netfilter/nf_conntrack_proto.c
417
static int nf_ct_tcp_fixup(struct nf_conn *ct, void *_nfproto)
net/netfilter/nf_conntrack_proto.c
421
if (nf_ct_l3num(ct) != nfproto)
net/netfilter/nf_conntrack_proto.c
424
if (nf_ct_protonum(ct) == IPPROTO_TCP &&
net/netfilter/nf_conntrack_proto.c
425
ct->proto.tcp.state == TCP_CONNTRACK_ESTABLISHED) {
net/netfilter/nf_conntrack_proto.c
426
ct->proto.tcp.seen[0].td_maxwin = 0;
net/netfilter/nf_conntrack_proto.c
427
ct->proto.tcp.seen[1].td_maxwin = 0;
net/netfilter/nf_conntrack_proto.c
58
if (net->ct.sysctl_log_invalid != protonum &&
net/netfilter/nf_conntrack_proto.c
59
net->ct.sysctl_log_invalid != IPPROTO_RAW)
net/netfilter/nf_conntrack_proto.c
74
const struct nf_conn *ct,
net/netfilter/nf_conntrack_proto.c
82
net = nf_ct_net(ct);
net/netfilter/nf_conntrack_proto.c
83
if (likely(net->ct.sysctl_log_invalid == 0))
net/netfilter/nf_conntrack_proto.c
91
nf_ct_protonum(ct), "%pV", &vaf);
net/netfilter/nf_conntrack_proto_gre.c
107
dir == IP_CT_DIR_REPLY ? "reply" : "orig", ct);
net/netfilter/nf_conntrack_proto_gre.c
129
void nf_ct_gre_keymap_destroy(struct nf_conn *ct)
net/netfilter/nf_conntrack_proto_gre.c
131
struct nf_ct_pptp_master *ct_pptp_info = nfct_help_data(ct);
net/netfilter/nf_conntrack_proto_gre.c
134
pr_debug("entering for ct %p\n", ct);
net/netfilter/nf_conntrack_proto_gre.c
190
static void gre_print_conntrack(struct seq_file *s, struct nf_conn *ct)
net/netfilter/nf_conntrack_proto_gre.c
193
(ct->proto.gre.timeout / HZ),
net/netfilter/nf_conntrack_proto_gre.c
194
(ct->proto.gre.stream_timeout / HZ));
net/netfilter/nf_conntrack_proto_gre.c
204
int nf_conntrack_gre_packet(struct nf_conn *ct,
net/netfilter/nf_conntrack_proto_gre.c
212
if (!nf_ct_is_confirmed(ct)) {
net/netfilter/nf_conntrack_proto_gre.c
213
unsigned int *timeouts = nf_ct_timeout_lookup(ct);
net/netfilter/nf_conntrack_proto_gre.c
216
timeouts = gre_get_timeouts(nf_ct_net(ct));
net/netfilter/nf_conntrack_proto_gre.c
220
ct->proto.gre.stream_timeout = timeouts[GRE_CT_REPLIED];
net/netfilter/nf_conntrack_proto_gre.c
221
ct->proto.gre.timeout = timeouts[GRE_CT_UNREPLIED];
net/netfilter/nf_conntrack_proto_gre.c
224
status = READ_ONCE(ct->status);
net/netfilter/nf_conntrack_proto_gre.c
228
nf_ct_refresh_acct(ct, ctinfo, skb,
net/netfilter/nf_conntrack_proto_gre.c
229
ct->proto.gre.stream_timeout);
net/netfilter/nf_conntrack_proto_gre.c
236
if (!test_and_set_bit(IPS_ASSURED_BIT, &ct->status))
net/netfilter/nf_conntrack_proto_gre.c
237
nf_conntrack_event_cache(IPCT_ASSURED, ct);
net/netfilter/nf_conntrack_proto_gre.c
239
nf_ct_refresh_acct(ct, ctinfo, skb,
net/netfilter/nf_conntrack_proto_gre.c
240
ct->proto.gre.timeout);
net/netfilter/nf_conntrack_proto_gre.c
57
return &net->ct.nf_ct_proto.gre;
net/netfilter/nf_conntrack_proto_gre.c
91
int nf_ct_gre_keymap_add(struct nf_conn *ct, enum ip_conntrack_dir dir,
net/netfilter/nf_conntrack_proto_gre.c
94
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_proto_gre.c
96
struct nf_ct_pptp_master *ct_pptp_info = nfct_help_data(ct);
net/netfilter/nf_conntrack_proto_icmp.c
101
nf_ct_refresh_acct(ct, ctinfo, skb, *timeout);
net/netfilter/nf_conntrack_proto_icmp.c
118
struct nf_conn *ct;
net/netfilter/nf_conntrack_proto_icmp.c
168
ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_proto_icmp.c
170
ct_daddr = &ct->tuplehash[dir].tuple.dst.u3;
net/netfilter/nf_conntrack_proto_icmp.c
183
nf_ct_put(ct);
net/netfilter/nf_conntrack_proto_icmp.c
192
nf_ct_set(skb, ct, ctinfo);
net/netfilter/nf_conntrack_proto_icmp.c
220
if (state->net->ct.sysctl_checksum &&
net/netfilter/nf_conntrack_proto_icmp.c
70
int nf_conntrack_icmp_packet(struct nf_conn *ct,
net/netfilter/nf_conntrack_proto_icmp.c
78
unsigned int *timeout = nf_ct_timeout_lookup(ct);
net/netfilter/nf_conntrack_proto_icmp.c
89
if (ct->tuplehash[0].tuple.dst.u.icmp.type >= sizeof(valid_new) ||
net/netfilter/nf_conntrack_proto_icmp.c
90
!valid_new[ct->tuplehash[0].tuple.dst.u.icmp.type]) {
net/netfilter/nf_conntrack_proto_icmp.c
93
ct->tuplehash[0].tuple.dst.u.icmp.type);
net/netfilter/nf_conntrack_proto_icmp.c
94
nf_ct_dump_tuple_ip(&ct->tuplehash[0].tuple);
net/netfilter/nf_conntrack_proto_icmp.c
99
timeout = &nf_icmp_pernet(nf_ct_net(ct))->timeout;
net/netfilter/nf_conntrack_proto_icmpv6.c
103
if (!nf_ct_is_confirmed(ct)) {
net/netfilter/nf_conntrack_proto_icmpv6.c
104
int type = ct->tuplehash[0].tuple.dst.u.icmp.type - 128;
net/netfilter/nf_conntrack_proto_icmpv6.c
110
nf_ct_dump_tuple_ipv6(&ct->tuplehash[0].tuple);
net/netfilter/nf_conntrack_proto_icmpv6.c
116
timeout = icmpv6_get_timeouts(nf_ct_net(ct));
net/netfilter/nf_conntrack_proto_icmpv6.c
121
nf_ct_refresh_acct(ct, ctinfo, skb, *timeout);
net/netfilter/nf_conntrack_proto_icmpv6.c
201
state->net->ct.sysctl_checksum &&
net/netfilter/nf_conntrack_proto_icmpv6.c
89
int nf_conntrack_icmpv6_packet(struct nf_conn *ct,
net/netfilter/nf_conntrack_proto_icmpv6.c
94
unsigned int *timeout = nf_ct_timeout_lookup(ct);
net/netfilter/nf_conntrack_proto_sctp.c
134
static void sctp_print_conntrack(struct seq_file *s, struct nf_conn *ct)
net/netfilter/nf_conntrack_proto_sctp.c
136
seq_printf(s, "%s ", sctp_conntrack_names[ct->proto.sctp.state]);
net/netfilter/nf_conntrack_proto_sctp.c
148
static int do_basic_checks(struct nf_conn *ct,
net/netfilter/nf_conntrack_proto_sctp.c
175
nf_ct_l4proto_log_invalid(skb, ct, state,
net/netfilter/nf_conntrack_proto_sctp.c
240
sctp_new(struct nf_conn *ct, const struct sk_buff *skb,
net/netfilter/nf_conntrack_proto_sctp.c
248
memset(&ct->proto.sctp, 0, sizeof(ct->proto.sctp));
net/netfilter/nf_conntrack_proto_sctp.c
276
ct->proto.sctp.vtag[IP_CT_DIR_REPLY] = ih->init_tag;
net/netfilter/nf_conntrack_proto_sctp.c
280
ct->proto.sctp.vtag[IP_CT_DIR_ORIGINAL] = sh->vtag;
net/netfilter/nf_conntrack_proto_sctp.c
286
ct->proto.sctp.vtag[IP_CT_DIR_REPLY] = sh->vtag;
net/netfilter/nf_conntrack_proto_sctp.c
289
ct->proto.sctp.state = SCTP_CONNTRACK_NONE;
net/netfilter/nf_conntrack_proto_sctp.c
307
state->net->ct.sysctl_checksum &&
net/netfilter/nf_conntrack_proto_sctp.c
327
int nf_conntrack_sctp_packet(struct nf_conn *ct,
net/netfilter/nf_conntrack_proto_sctp.c
351
if (do_basic_checks(ct, skb, dataoff, map, state) != 0)
net/netfilter/nf_conntrack_proto_sctp.c
354
if (!nf_ct_is_confirmed(ct)) {
net/netfilter/nf_conntrack_proto_sctp.c
361
if (!sctp_new(ct, skb, sh, dataoff))
net/netfilter/nf_conntrack_proto_sctp.c
373
sh->vtag != ct->proto.sctp.vtag[dir]) {
net/netfilter/nf_conntrack_proto_sctp.c
374
nf_ct_l4proto_log_invalid(skb, ct, state,
net/netfilter/nf_conntrack_proto_sctp.c
376
sh->vtag, ct->proto.sctp.vtag[dir], dir);
net/netfilter/nf_conntrack_proto_sctp.c
381
spin_lock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_sctp.c
393
sh->vtag != ct->proto.sctp.vtag[dir]) ||
net/netfilter/nf_conntrack_proto_sctp.c
395
sh->vtag != ct->proto.sctp.vtag[!dir]))
net/netfilter/nf_conntrack_proto_sctp.c
402
sh->vtag != ct->proto.sctp.vtag[dir]) ||
net/netfilter/nf_conntrack_proto_sctp.c
404
sh->vtag != ct->proto.sctp.vtag[!dir]))
net/netfilter/nf_conntrack_proto_sctp.c
408
if (sh->vtag != ct->proto.sctp.vtag[dir])
net/netfilter/nf_conntrack_proto_sctp.c
411
ct->proto.sctp.init[dir] = 0;
net/netfilter/nf_conntrack_proto_sctp.c
412
ct->proto.sctp.init[!dir] = 0;
net/netfilter/nf_conntrack_proto_sctp.c
414
if (ct->proto.sctp.vtag[dir] == 0) {
net/netfilter/nf_conntrack_proto_sctp.c
416
ct->proto.sctp.vtag[dir] = sh->vtag;
net/netfilter/nf_conntrack_proto_sctp.c
417
} else if (sh->vtag != ct->proto.sctp.vtag[dir]) {
net/netfilter/nf_conntrack_proto_sctp.c
421
ct->proto.sctp.flags |= SCTP_FLAG_HEARTBEAT_VTAG_FAILED;
net/netfilter/nf_conntrack_proto_sctp.c
422
ct->proto.sctp.last_dir = dir;
net/netfilter/nf_conntrack_proto_sctp.c
425
} else if (ct->proto.sctp.flags & SCTP_FLAG_HEARTBEAT_VTAG_FAILED) {
net/netfilter/nf_conntrack_proto_sctp.c
426
ct->proto.sctp.flags &= ~SCTP_FLAG_HEARTBEAT_VTAG_FAILED;
net/netfilter/nf_conntrack_proto_sctp.c
429
if (ct->proto.sctp.vtag[dir] == 0) {
net/netfilter/nf_conntrack_proto_sctp.c
432
ct->proto.sctp.vtag[dir] = sh->vtag;
net/netfilter/nf_conntrack_proto_sctp.c
433
} else if (sh->vtag != ct->proto.sctp.vtag[dir]) {
net/netfilter/nf_conntrack_proto_sctp.c
437
if ((ct->proto.sctp.flags & SCTP_FLAG_HEARTBEAT_VTAG_FAILED) == 0 ||
net/netfilter/nf_conntrack_proto_sctp.c
438
ct->proto.sctp.last_dir == dir)
net/netfilter/nf_conntrack_proto_sctp.c
441
ct->proto.sctp.flags &= ~SCTP_FLAG_HEARTBEAT_VTAG_FAILED;
net/netfilter/nf_conntrack_proto_sctp.c
442
ct->proto.sctp.vtag[dir] = sh->vtag;
net/netfilter/nf_conntrack_proto_sctp.c
443
ct->proto.sctp.vtag[!dir] = 0;
net/netfilter/nf_conntrack_proto_sctp.c
444
} else if (ct->proto.sctp.flags & SCTP_FLAG_HEARTBEAT_VTAG_FAILED) {
net/netfilter/nf_conntrack_proto_sctp.c
445
ct->proto.sctp.flags &= ~SCTP_FLAG_HEARTBEAT_VTAG_FAILED;
net/netfilter/nf_conntrack_proto_sctp.c
449
old_state = ct->proto.sctp.state;
net/netfilter/nf_conntrack_proto_sctp.c
454
nf_ct_l4proto_log_invalid(skb, ct, state,
net/netfilter/nf_conntrack_proto_sctp.c
469
if (ct->proto.sctp.init[dir] && ct->proto.sctp.init[!dir])
net/netfilter/nf_conntrack_proto_sctp.c
470
ct->proto.sctp.init[!dir] = 0;
net/netfilter/nf_conntrack_proto_sctp.c
471
ct->proto.sctp.init[dir] = 1;
net/netfilter/nf_conntrack_proto_sctp.c
474
ct->proto.sctp.vtag[!dir] = ih->init_tag;
net/netfilter/nf_conntrack_proto_sctp.c
482
nf_ct_is_confirmed(ct))
net/netfilter/nf_conntrack_proto_sctp.c
492
vtag = ct->proto.sctp.vtag[!dir];
net/netfilter/nf_conntrack_proto_sctp.c
493
if (!ct->proto.sctp.init[!dir] && vtag && vtag != ih->init_tag)
net/netfilter/nf_conntrack_proto_sctp.c
496
if (ct->proto.sctp.init[dir] && ct->proto.sctp.init[!dir] &&
net/netfilter/nf_conntrack_proto_sctp.c
501
ct->proto.sctp.vtag[!dir] = ih->init_tag;
net/netfilter/nf_conntrack_proto_sctp.c
504
ct->proto.sctp.state = new_state;
net/netfilter/nf_conntrack_proto_sctp.c
506
nf_conntrack_event_cache(IPCT_PROTOINFO, ct);
net/netfilter/nf_conntrack_proto_sctp.c
508
!test_and_set_bit(IPS_ASSURED_BIT, &ct->status))
net/netfilter/nf_conntrack_proto_sctp.c
509
nf_conntrack_event_cache(IPCT_ASSURED, ct);
net/netfilter/nf_conntrack_proto_sctp.c
512
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_sctp.c
518
timeouts = nf_ct_timeout_lookup(ct);
net/netfilter/nf_conntrack_proto_sctp.c
520
timeouts = nf_sctp_pernet(nf_ct_net(ct))->timeouts;
net/netfilter/nf_conntrack_proto_sctp.c
522
nf_ct_refresh_acct(ct, ctinfo, skb, timeouts[new_state]);
net/netfilter/nf_conntrack_proto_sctp.c
527
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_sctp.c
532
static bool sctp_can_early_drop(const struct nf_conn *ct)
net/netfilter/nf_conntrack_proto_sctp.c
534
switch (ct->proto.sctp.state) {
net/netfilter/nf_conntrack_proto_sctp.c
552
struct nf_conn *ct, bool destroy)
net/netfilter/nf_conntrack_proto_sctp.c
556
spin_lock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_sctp.c
561
if (nla_put_u8(skb, CTA_PROTOINFO_SCTP_STATE, ct->proto.sctp.state))
net/netfilter/nf_conntrack_proto_sctp.c
568
ct->proto.sctp.vtag[IP_CT_DIR_ORIGINAL]) ||
net/netfilter/nf_conntrack_proto_sctp.c
570
ct->proto.sctp.vtag[IP_CT_DIR_REPLY]))
net/netfilter/nf_conntrack_proto_sctp.c
574
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_sctp.c
580
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_sctp.c
596
static int nlattr_to_sctp(struct nlattr *cda[], struct nf_conn *ct)
net/netfilter/nf_conntrack_proto_sctp.c
616
spin_lock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_sctp.c
617
ct->proto.sctp.state = nla_get_u8(tb[CTA_PROTOINFO_SCTP_STATE]);
net/netfilter/nf_conntrack_proto_sctp.c
618
ct->proto.sctp.vtag[IP_CT_DIR_ORIGINAL] =
net/netfilter/nf_conntrack_proto_sctp.c
620
ct->proto.sctp.vtag[IP_CT_DIR_REPLY] =
net/netfilter/nf_conntrack_proto_sctp.c
622
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1011
if (((ct->proto.tcp.seen[dir].flags
net/netfilter/nf_conntrack_proto_tcp.c
1012
| ct->proto.tcp.seen[!dir].flags)
net/netfilter/nf_conntrack_proto_tcp.c
1014
|| (ct->proto.tcp.last_dir == dir
net/netfilter/nf_conntrack_proto_tcp.c
1015
&& ct->proto.tcp.last_index == TCP_RST_SET)) {
net/netfilter/nf_conntrack_proto_tcp.c
1018
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1024
if (nf_ct_kill(ct))
net/netfilter/nf_conntrack_proto_tcp.c
1044
&& ct->proto.tcp.last_index == TCP_SYN_SET
net/netfilter/nf_conntrack_proto_tcp.c
1045
&& ct->proto.tcp.last_dir != dir
net/netfilter/nf_conntrack_proto_tcp.c
1046
&& ntohl(th->ack_seq) == ct->proto.tcp.last_end) {
net/netfilter/nf_conntrack_proto_tcp.c
1055
ct->proto.tcp.seen[ct->proto.tcp.last_dir].td_end =
net/netfilter/nf_conntrack_proto_tcp.c
1056
ct->proto.tcp.last_end;
net/netfilter/nf_conntrack_proto_tcp.c
1057
ct->proto.tcp.seen[ct->proto.tcp.last_dir].td_maxend =
net/netfilter/nf_conntrack_proto_tcp.c
1058
ct->proto.tcp.last_end;
net/netfilter/nf_conntrack_proto_tcp.c
1059
ct->proto.tcp.seen[ct->proto.tcp.last_dir].td_maxwin =
net/netfilter/nf_conntrack_proto_tcp.c
1060
ct->proto.tcp.last_win == 0 ?
net/netfilter/nf_conntrack_proto_tcp.c
1061
1 : ct->proto.tcp.last_win;
net/netfilter/nf_conntrack_proto_tcp.c
1062
ct->proto.tcp.seen[ct->proto.tcp.last_dir].td_scale =
net/netfilter/nf_conntrack_proto_tcp.c
1063
ct->proto.tcp.last_wscale;
net/netfilter/nf_conntrack_proto_tcp.c
1064
ct->proto.tcp.last_flags &= ~IP_CT_EXP_CHALLENGE_ACK;
net/netfilter/nf_conntrack_proto_tcp.c
1065
ct->proto.tcp.seen[ct->proto.tcp.last_dir].flags =
net/netfilter/nf_conntrack_proto_tcp.c
1066
ct->proto.tcp.last_flags;
net/netfilter/nf_conntrack_proto_tcp.c
1067
nf_ct_tcp_state_reset(&ct->proto.tcp.seen[dir]);
net/netfilter/nf_conntrack_proto_tcp.c
1070
ct->proto.tcp.last_index = index;
net/netfilter/nf_conntrack_proto_tcp.c
1071
ct->proto.tcp.last_dir = dir;
net/netfilter/nf_conntrack_proto_tcp.c
1072
ct->proto.tcp.last_seq = ntohl(th->seq);
net/netfilter/nf_conntrack_proto_tcp.c
1073
ct->proto.tcp.last_end =
net/netfilter/nf_conntrack_proto_tcp.c
1075
ct->proto.tcp.last_win = ntohs(th->window);
net/netfilter/nf_conntrack_proto_tcp.c
1087
ct->proto.tcp.last_flags =
net/netfilter/nf_conntrack_proto_tcp.c
1088
ct->proto.tcp.last_wscale = 0;
net/netfilter/nf_conntrack_proto_tcp.c
1091
ct->proto.tcp.last_flags |=
net/netfilter/nf_conntrack_proto_tcp.c
1093
ct->proto.tcp.last_wscale = seen.td_scale;
net/netfilter/nf_conntrack_proto_tcp.c
1096
ct->proto.tcp.last_flags |=
net/netfilter/nf_conntrack_proto_tcp.c
1104
ct->proto.tcp.last_flags |=
net/netfilter/nf_conntrack_proto_tcp.c
1112
ct->proto.tcp.last_ack = ntohl(th->ack_seq);
net/netfilter/nf_conntrack_proto_tcp.c
1114
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1115
nf_ct_l4proto_log_invalid(skb, ct, state,
net/netfilter/nf_conntrack_proto_tcp.c
1127
if (nfct_synproxy(ct) && old_state == TCP_CONNTRACK_SYN_SENT &&
net/netfilter/nf_conntrack_proto_tcp.c
1129
ct->proto.tcp.last_dir == IP_CT_DIR_ORIGINAL &&
net/netfilter/nf_conntrack_proto_tcp.c
1130
ct->proto.tcp.seen[dir].td_end - 1 == ntohl(th->seq)) {
net/netfilter/nf_conntrack_proto_tcp.c
1132
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1137
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1138
nf_ct_l4proto_log_invalid(skb, ct, state,
net/netfilter/nf_conntrack_proto_tcp.c
1150
ct->proto.tcp.last_dir != dir &&
net/netfilter/nf_conntrack_proto_tcp.c
1151
ct->proto.tcp.last_index == TCP_SYN_SET &&
net/netfilter/nf_conntrack_proto_tcp.c
1152
(ct->proto.tcp.last_flags & IP_CT_EXP_CHALLENGE_ACK)) {
net/netfilter/nf_conntrack_proto_tcp.c
1154
ct->proto.tcp.last_flags &= ~IP_CT_EXP_CHALLENGE_ACK;
net/netfilter/nf_conntrack_proto_tcp.c
1155
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1156
nf_ct_l4proto_log_invalid(skb, ct, state, "challenge-ack ignored");
net/netfilter/nf_conntrack_proto_tcp.c
1164
ct->proto.tcp.last_flags |= IP_CT_TCP_SIMULTANEOUS_OPEN;
net/netfilter/nf_conntrack_proto_tcp.c
1168
ct->proto.tcp.last_flags & IP_CT_TCP_SIMULTANEOUS_OPEN)
net/netfilter/nf_conntrack_proto_tcp.c
1182
if (tcp_can_early_drop(ct))
net/netfilter/nf_conntrack_proto_tcp.c
1186
if ((ct->proto.tcp.seen[!dir].flags & IP_CT_TCP_FLAG_MAXACK_SET) &&
net/netfilter/nf_conntrack_proto_tcp.c
1187
ct->proto.tcp.last_index != TCP_SYN_SET) {
net/netfilter/nf_conntrack_proto_tcp.c
1194
if (seq == 0 && !nf_conntrack_tcp_established(ct))
net/netfilter/nf_conntrack_proto_tcp.c
1197
if (before(seq, ct->proto.tcp.seen[!dir].td_maxack) &&
net/netfilter/nf_conntrack_proto_tcp.c
1200
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1201
nf_ct_l4proto_log_invalid(skb, ct, state, "invalid rst");
net/netfilter/nf_conntrack_proto_tcp.c
1205
if (!nf_conntrack_tcp_established(ct) ||
net/netfilter/nf_conntrack_proto_tcp.c
1206
seq == ct->proto.tcp.seen[!dir].td_maxack)
net/netfilter/nf_conntrack_proto_tcp.c
1213
if (ct->proto.tcp.last_index == TCP_ACK_SET &&
net/netfilter/nf_conntrack_proto_tcp.c
1214
ct->proto.tcp.last_dir == dir &&
net/netfilter/nf_conntrack_proto_tcp.c
1215
seq == ct->proto.tcp.last_end)
net/netfilter/nf_conntrack_proto_tcp.c
1223
if (((test_bit(IPS_SEEN_REPLY_BIT, &ct->status)
net/netfilter/nf_conntrack_proto_tcp.c
1224
&& ct->proto.tcp.last_index == TCP_SYN_SET)
net/netfilter/nf_conntrack_proto_tcp.c
1225
|| (!test_bit(IPS_ASSURED_BIT, &ct->status)
net/netfilter/nf_conntrack_proto_tcp.c
1226
&& ct->proto.tcp.last_index == TCP_ACK_SET))
net/netfilter/nf_conntrack_proto_tcp.c
1227
&& ntohl(th->ack_seq) == ct->proto.tcp.last_end) {
net/netfilter/nf_conntrack_proto_tcp.c
1242
ct->proto.tcp.last_index == TCP_ACK_SET &&
net/netfilter/nf_conntrack_proto_tcp.c
1243
ct->proto.tcp.last_dir == IP_CT_DIR_REPLY &&
net/netfilter/nf_conntrack_proto_tcp.c
1244
ntohl(th->seq) == ct->proto.tcp.last_ack)
net/netfilter/nf_conntrack_proto_tcp.c
1253
res = tcp_in_window(ct, dir, index,
net/netfilter/nf_conntrack_proto_tcp.c
1257
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1260
nf_tcp_handle_invalid(ct, dir, index, skb, state);
net/netfilter/nf_conntrack_proto_tcp.c
1261
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1268
ct->proto.tcp.last_index = index;
net/netfilter/nf_conntrack_proto_tcp.c
1269
ct->proto.tcp.last_dir = dir;
net/netfilter/nf_conntrack_proto_tcp.c
1271
ct->proto.tcp.state = new_state;
net/netfilter/nf_conntrack_proto_tcp.c
1274
ct->proto.tcp.seen[dir].flags |= IP_CT_TCP_FLAG_CLOSE_INIT;
net/netfilter/nf_conntrack_proto_tcp.c
1276
timeouts = nf_ct_timeout_lookup(ct);
net/netfilter/nf_conntrack_proto_tcp.c
1280
if (ct->proto.tcp.retrans >= tn->tcp_max_retrans &&
net/netfilter/nf_conntrack_proto_tcp.c
1285
else if ((ct->proto.tcp.seen[0].flags | ct->proto.tcp.seen[1].flags) &
net/netfilter/nf_conntrack_proto_tcp.c
1289
else if (ct->proto.tcp.last_win == 0 &&
net/netfilter/nf_conntrack_proto_tcp.c
1294
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1297
nf_conntrack_event_cache(IPCT_PROTOINFO, ct);
net/netfilter/nf_conntrack_proto_tcp.c
1299
if (!test_bit(IPS_SEEN_REPLY_BIT, &ct->status)) {
net/netfilter/nf_conntrack_proto_tcp.c
1305
nf_ct_kill_acct(ct, ctinfo, skb);
net/netfilter/nf_conntrack_proto_tcp.c
1324
} else if (!test_bit(IPS_ASSURED_BIT, &ct->status)
net/netfilter/nf_conntrack_proto_tcp.c
1331
set_bit(IPS_ASSURED_BIT, &ct->status);
net/netfilter/nf_conntrack_proto_tcp.c
1332
nf_conntrack_event_cache(IPCT_ASSURED, ct);
net/netfilter/nf_conntrack_proto_tcp.c
1334
nf_ct_refresh_acct(ct, ctinfo, skb, timeout);
net/netfilter/nf_conntrack_proto_tcp.c
1345
struct nf_conn *ct, bool destroy)
net/netfilter/nf_conntrack_proto_tcp.c
1350
spin_lock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1355
if (nla_put_u8(skb, CTA_PROTOINFO_TCP_STATE, ct->proto.tcp.state))
net/netfilter/nf_conntrack_proto_tcp.c
1362
ct->proto.tcp.seen[0].td_scale) ||
net/netfilter/nf_conntrack_proto_tcp.c
1364
ct->proto.tcp.seen[1].td_scale))
net/netfilter/nf_conntrack_proto_tcp.c
1367
tmp.flags = ct->proto.tcp.seen[0].flags;
net/netfilter/nf_conntrack_proto_tcp.c
1372
tmp.flags = ct->proto.tcp.seen[1].flags;
net/netfilter/nf_conntrack_proto_tcp.c
1377
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1383
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1401
static int nlattr_to_tcp(struct nlattr *cda[], struct nf_conn *ct)
net/netfilter/nf_conntrack_proto_tcp.c
1417
spin_lock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
1419
ct->proto.tcp.state = nla_get_u8(tb[CTA_PROTOINFO_TCP_STATE]);
net/netfilter/nf_conntrack_proto_tcp.c
1424
ct->proto.tcp.seen[0].flags &= ~attr->mask;
net/netfilter/nf_conntrack_proto_tcp.c
1425
ct->proto.tcp.seen[0].flags |= attr->flags & attr->mask;
net/netfilter/nf_conntrack_proto_tcp.c
1431
ct->proto.tcp.seen[1].flags &= ~attr->mask;
net/netfilter/nf_conntrack_proto_tcp.c
1432
ct->proto.tcp.seen[1].flags |= attr->flags & attr->mask;
net/netfilter/nf_conntrack_proto_tcp.c
1437
ct->proto.tcp.seen[0].flags & IP_CT_TCP_FLAG_WINDOW_SCALE &&
net/netfilter/nf_conntrack_proto_tcp.c
1438
ct->proto.tcp.seen[1].flags & IP_CT_TCP_FLAG_WINDOW_SCALE) {
net/netfilter/nf_conntrack_proto_tcp.c
1439
ct->proto.tcp.seen[0].td_scale =
net/netfilter/nf_conntrack_proto_tcp.c
1441
ct->proto.tcp.seen[1].td_scale =
net/netfilter/nf_conntrack_proto_tcp.c
1444
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
266
static void tcp_print_conntrack(struct seq_file *s, struct nf_conn *ct)
net/netfilter/nf_conntrack_proto_tcp.c
268
if (test_bit(IPS_OFFLOAD_BIT, &ct->status))
net/netfilter/nf_conntrack_proto_tcp.c
271
seq_printf(s, "%s ", tcp_conntrack_names[ct->proto.tcp.state]);
net/netfilter/nf_conntrack_proto_tcp.c
485
const struct nf_conn *ct,
net/netfilter/nf_conntrack_proto_tcp.c
491
const struct nf_tcp_net *tn = nf_tcp_pernet(nf_ct_net(ct));
net/netfilter/nf_conntrack_proto_tcp.c
503
nf_ct_l4proto_log_invalid(skb, ct, state, "%pV", &vaf);
net/netfilter/nf_conntrack_proto_tcp.c
510
tcp_in_window(struct nf_conn *ct, enum ip_conntrack_dir dir,
net/netfilter/nf_conntrack_proto_tcp.c
515
struct ip_ct_tcp *state = &ct->proto.tcp;
net/netfilter/nf_conntrack_proto_tcp.c
536
receiver_offset = nf_ct_seq_offset(ct, !dir, ack - 1);
net/netfilter/nf_conntrack_proto_tcp.c
643
return nf_tcp_log_invalid(skb, ct, hook_state, sender, NFCT_TCP_IGNORE,
net/netfilter/nf_conntrack_proto_tcp.c
647
return nf_tcp_log_invalid(skb, ct, hook_state, sender, NFCT_TCP_INVALID,
net/netfilter/nf_conntrack_proto_tcp.c
653
return nf_tcp_log_invalid(skb, ct, hook_state, sender, NFCT_TCP_INVALID,
net/netfilter/nf_conntrack_proto_tcp.c
661
return nf_tcp_log_invalid(skb, ct, hook_state, sender, NFCT_TCP_IGNORE,
net/netfilter/nf_conntrack_proto_tcp.c
665
return nf_tcp_log_invalid(skb, ct, hook_state, sender, NFCT_TCP_IGNORE,
net/netfilter/nf_conntrack_proto_tcp.c
722
static void __cold nf_tcp_handle_invalid(struct nf_conn *ct,
net/netfilter/nf_conntrack_proto_tcp.c
733
if (!test_bit(IPS_ASSURED_BIT, &ct->status) ||
net/netfilter/nf_conntrack_proto_tcp.c
734
test_bit(IPS_FIXED_TIMEOUT_BIT, &ct->status))
net/netfilter/nf_conntrack_proto_tcp.c
753
if (ct->proto.tcp.last_dir != dir &&
net/netfilter/nf_conntrack_proto_tcp.c
754
(ct->proto.tcp.last_index == TCP_FIN_SET ||
net/netfilter/nf_conntrack_proto_tcp.c
755
ct->proto.tcp.last_index == TCP_RST_SET)) {
net/netfilter/nf_conntrack_proto_tcp.c
756
expires = nf_ct_expires(ct);
net/netfilter/nf_conntrack_proto_tcp.c
760
tn = nf_tcp_pernet(nf_ct_net(ct));
net/netfilter/nf_conntrack_proto_tcp.c
761
timeouts = nf_ct_timeout_lookup(ct);
net/netfilter/nf_conntrack_proto_tcp.c
767
nf_ct_l4proto_log_invalid(skb, ct, hook_state,
net/netfilter/nf_conntrack_proto_tcp.c
769
index, dir, ct->proto.tcp.last_index, timeout);
net/netfilter/nf_conntrack_proto_tcp.c
771
WRITE_ONCE(ct->timeout, timeout + nfct_time_stamp);
net/netfilter/nf_conntrack_proto_tcp.c
774
ct->proto.tcp.last_index = index;
net/netfilter/nf_conntrack_proto_tcp.c
775
ct->proto.tcp.last_dir = dir;
net/netfilter/nf_conntrack_proto_tcp.c
821
if (state->net->ct.sysctl_checksum &&
net/netfilter/nf_conntrack_proto_tcp.c
838
static noinline bool tcp_new(struct nf_conn *ct, const struct sk_buff *skb,
net/netfilter/nf_conntrack_proto_tcp.c
844
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_proto_tcp.c
857
memset(&ct->proto.tcp, 0, sizeof(ct->proto.tcp));
net/netfilter/nf_conntrack_proto_tcp.c
859
ct->proto.tcp.seen[0].td_end =
net/netfilter/nf_conntrack_proto_tcp.c
862
ct->proto.tcp.seen[0].td_maxwin = ntohs(th->window);
net/netfilter/nf_conntrack_proto_tcp.c
863
if (ct->proto.tcp.seen[0].td_maxwin == 0)
net/netfilter/nf_conntrack_proto_tcp.c
864
ct->proto.tcp.seen[0].td_maxwin = 1;
net/netfilter/nf_conntrack_proto_tcp.c
865
ct->proto.tcp.seen[0].td_maxend =
net/netfilter/nf_conntrack_proto_tcp.c
866
ct->proto.tcp.seen[0].td_end;
net/netfilter/nf_conntrack_proto_tcp.c
868
tcp_options(skb, dataoff, th, &ct->proto.tcp.seen[0]);
net/netfilter/nf_conntrack_proto_tcp.c
873
memset(&ct->proto.tcp, 0, sizeof(ct->proto.tcp));
net/netfilter/nf_conntrack_proto_tcp.c
879
ct->proto.tcp.seen[0].td_end =
net/netfilter/nf_conntrack_proto_tcp.c
882
ct->proto.tcp.seen[0].td_maxwin = ntohs(th->window);
net/netfilter/nf_conntrack_proto_tcp.c
883
if (ct->proto.tcp.seen[0].td_maxwin == 0)
net/netfilter/nf_conntrack_proto_tcp.c
884
ct->proto.tcp.seen[0].td_maxwin = 1;
net/netfilter/nf_conntrack_proto_tcp.c
885
ct->proto.tcp.seen[0].td_maxend =
net/netfilter/nf_conntrack_proto_tcp.c
886
ct->proto.tcp.seen[0].td_end +
net/netfilter/nf_conntrack_proto_tcp.c
887
ct->proto.tcp.seen[0].td_maxwin;
net/netfilter/nf_conntrack_proto_tcp.c
891
ct->proto.tcp.seen[0].flags =
net/netfilter/nf_conntrack_proto_tcp.c
892
ct->proto.tcp.seen[1].flags = IP_CT_TCP_FLAG_SACK_PERM |
net/netfilter/nf_conntrack_proto_tcp.c
897
ct->proto.tcp.last_index = TCP_NONE_SET;
net/netfilter/nf_conntrack_proto_tcp.c
901
static bool tcp_can_early_drop(const struct nf_conn *ct)
net/netfilter/nf_conntrack_proto_tcp.c
903
switch (ct->proto.tcp.state) {
net/netfilter/nf_conntrack_proto_tcp.c
917
void nf_conntrack_tcp_set_closing(struct nf_conn *ct)
net/netfilter/nf_conntrack_proto_tcp.c
923
if (!nf_ct_is_confirmed(ct))
net/netfilter/nf_conntrack_proto_tcp.c
926
spin_lock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
927
old_state = ct->proto.tcp.state;
net/netfilter/nf_conntrack_proto_tcp.c
928
ct->proto.tcp.state = TCP_CONNTRACK_CLOSE;
net/netfilter/nf_conntrack_proto_tcp.c
931
test_bit(IPS_FIXED_TIMEOUT_BIT, &ct->status)) {
net/netfilter/nf_conntrack_proto_tcp.c
932
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
936
timeouts = nf_ct_timeout_lookup(ct);
net/netfilter/nf_conntrack_proto_tcp.c
940
tn = nf_tcp_pernet(nf_ct_net(ct));
net/netfilter/nf_conntrack_proto_tcp.c
945
WRITE_ONCE(ct->timeout, timeout + nfct_time_stamp);
net/netfilter/nf_conntrack_proto_tcp.c
947
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
949
nf_conntrack_event_cache(IPCT_PROTOINFO, ct);
net/netfilter/nf_conntrack_proto_tcp.c
963
int nf_conntrack_tcp_packet(struct nf_conn *ct,
net/netfilter/nf_conntrack_proto_tcp.c
969
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_proto_tcp.c
986
if (!nf_ct_is_confirmed(ct) && !tcp_new(ct, skb, dataoff, th, state))
net/netfilter/nf_conntrack_proto_tcp.c
989
spin_lock_bh(&ct->lock);
net/netfilter/nf_conntrack_proto_tcp.c
990
old_state = ct->proto.tcp.state;
net/netfilter/nf_conntrack_proto_udp.c
100
status = READ_ONCE(ct->status);
net/netfilter/nf_conntrack_proto_udp.c
102
ct->proto.udp.stream_ts = 2 * HZ + jiffies;
net/netfilter/nf_conntrack_proto_udp.c
112
if (time_after(jiffies, ct->proto.udp.stream_ts)) {
net/netfilter/nf_conntrack_proto_udp.c
117
nf_ct_refresh_acct(ct, ctinfo, skb, extra);
net/netfilter/nf_conntrack_proto_udp.c
124
if (stream && !test_and_set_bit(IPS_ASSURED_BIT, &ct->status))
net/netfilter/nf_conntrack_proto_udp.c
125
nf_conntrack_event_cache(IPCT_ASSURED, ct);
net/netfilter/nf_conntrack_proto_udp.c
127
nf_ct_refresh_acct(ct, ctinfo, skb, timeouts[UDP_CT_UNREPLIED]);
net/netfilter/nf_conntrack_proto_udp.c
172
state->net->ct.sysctl_checksum &&
net/netfilter/nf_conntrack_proto_udp.c
183
int nf_conntrack_udplite_packet(struct nf_conn *ct,
net/netfilter/nf_conntrack_proto_udp.c
194
timeouts = nf_ct_timeout_lookup(ct);
net/netfilter/nf_conntrack_proto_udp.c
196
timeouts = udp_get_timeouts(nf_ct_net(ct));
net/netfilter/nf_conntrack_proto_udp.c
200
if (test_bit(IPS_SEEN_REPLY_BIT, &ct->status)) {
net/netfilter/nf_conntrack_proto_udp.c
201
nf_ct_refresh_acct(ct, ctinfo, skb,
net/netfilter/nf_conntrack_proto_udp.c
204
if (unlikely((ct->status & IPS_NAT_CLASH)))
net/netfilter/nf_conntrack_proto_udp.c
208
if (!test_and_set_bit(IPS_ASSURED_BIT, &ct->status))
net/netfilter/nf_conntrack_proto_udp.c
209
nf_conntrack_event_cache(IPCT_ASSURED, ct);
net/netfilter/nf_conntrack_proto_udp.c
211
nf_ct_refresh_acct(ct, ctinfo, skb, timeouts[UDP_CT_UNREPLIED]);
net/netfilter/nf_conntrack_proto_udp.c
74
state->net->ct.sysctl_checksum &&
net/netfilter/nf_conntrack_proto_udp.c
84
int nf_conntrack_udp_packet(struct nf_conn *ct,
net/netfilter/nf_conntrack_proto_udp.c
96
timeouts = nf_ct_timeout_lookup(ct);
net/netfilter/nf_conntrack_proto_udp.c
98
timeouts = udp_get_timeouts(nf_ct_net(ct));
net/netfilter/nf_conntrack_sane.c
145
exp = nf_ct_expect_alloc(ct);
net/netfilter/nf_conntrack_sane.c
147
nf_ct_helper_log(skb, ct, "cannot alloc expectation");
net/netfilter/nf_conntrack_sane.c
151
tuple = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple;
net/netfilter/nf_conntrack_sane.c
152
nf_ct_expect_init(exp, NF_CT_EXPECT_CLASS_DEFAULT, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_sane.c
161
nf_ct_helper_log(skb, ct, "cannot add expectation");
net/netfilter/nf_conntrack_sane.c
60
struct nf_conn *ct,
net/netfilter/nf_conntrack_sane.c
68
struct nf_ct_sane_master *ct_sane_info = nfct_help_data(ct);
net/netfilter/nf_conntrack_seqadj.c
10
int nf_ct_seqadj_init(struct nf_conn *ct, enum ip_conntrack_info ctinfo,
net/netfilter/nf_conntrack_seqadj.c
119
struct nf_conn *ct,
net/netfilter/nf_conntrack_seqadj.c
123
struct nf_conn_seqadj *seqadj = nfct_seqadj(ct);
net/netfilter/nf_conntrack_seqadj.c
165
struct nf_conn *ct, enum ip_conntrack_info ctinfo,
net/netfilter/nf_conntrack_seqadj.c
172
struct nf_conn_seqadj *seqadj = nfct_seqadj(ct);
net/netfilter/nf_conntrack_seqadj.c
183
spin_lock_bh(&ct->lock);
net/netfilter/nf_conntrack_seqadj.c
20
set_bit(IPS_SEQ_ADJUST_BIT, &ct->status);
net/netfilter/nf_conntrack_seqadj.c
212
res = nf_ct_sack_adjust(skb, protoff, ct, ctinfo);
net/netfilter/nf_conntrack_seqadj.c
214
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_seqadj.c
22
seqadj = nfct_seqadj(ct);
net/netfilter/nf_conntrack_seqadj.c
220
s32 nf_ct_seq_offset(const struct nf_conn *ct,
net/netfilter/nf_conntrack_seqadj.c
224
struct nf_conn_seqadj *seqadj = nfct_seqadj(ct);
net/netfilter/nf_conntrack_seqadj.c
30
int nf_ct_seqadj_set(struct nf_conn *ct, enum ip_conntrack_info ctinfo,
net/netfilter/nf_conntrack_seqadj.c
33
struct nf_conn_seqadj *seqadj = nfct_seqadj(ct);
net/netfilter/nf_conntrack_seqadj.c
45
set_bit(IPS_SEQ_ADJUST_BIT, &ct->status);
net/netfilter/nf_conntrack_seqadj.c
47
spin_lock_bh(&ct->lock);
net/netfilter/nf_conntrack_seqadj.c
55
spin_unlock_bh(&ct->lock);
net/netfilter/nf_conntrack_seqadj.c
61
struct nf_conn *ct, enum ip_conntrack_info ctinfo,
net/netfilter/nf_conntrack_seqadj.c
66
if (nf_ct_protonum(ct) != IPPROTO_TCP)
net/netfilter/nf_conntrack_seqadj.c
70
nf_ct_seqadj_set(ct, ctinfo, th->seq, off);
net/netfilter/nf_conntrack_sip.c
1032
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_sip.c
1048
if (ct_sip_get_sdp_header(ct, *dptr, 0, *datalen,
net/netfilter/nf_conntrack_sip.c
1058
if (ct_sip_parse_sdp_addr(ct, *dptr, sdpoff, *datalen,
net/netfilter/nf_conntrack_sip.c
1068
if (ct_sip_get_sdp_header(ct, *dptr, mediaoff, *datalen,
net/netfilter/nf_conntrack_sip.c
1087
nf_ct_helper_log(skb, ct, "wrong port %u", port);
net/netfilter/nf_conntrack_sip.c
1093
if (ct_sip_parse_sdp_addr(ct, *dptr, mediaoff, *datalen,
net/netfilter/nf_conntrack_sip.c
110
static int callid_len(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
1103
nf_ct_helper_log(skb, ct, "cannot parse SDP message");
net/netfilter/nf_conntrack_sip.c
1112
nf_ct_helper_log(skb, ct,
net/netfilter/nf_conntrack_sip.c
1118
if (maddr_len && hooks && ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_sip.c
1125
nf_ct_helper_log(skb, ct, "cannot mangle SDP");
net/netfilter/nf_conntrack_sip.c
1134
if (hooks && ct->status & IPS_NAT_MASK && have_rtp_addr)
net/netfilter/nf_conntrack_sip.c
1147
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_sip.c
1148
struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct);
net/netfilter/nf_conntrack_sip.c
1154
flush_expectations(ct, true);
net/netfilter/nf_conntrack_sip.c
1164
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_sip.c
1165
struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct);
net/netfilter/nf_conntrack_sip.c
1171
flush_expectations(ct, true);
net/netfilter/nf_conntrack_sip.c
1181
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_sip.c
1182
struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct);
net/netfilter/nf_conntrack_sip.c
1188
flush_expectations(ct, true);
net/netfilter/nf_conntrack_sip.c
1198
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_sip.c
1199
struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct);
net/netfilter/nf_conntrack_sip.c
1202
flush_expectations(ct, true);
net/netfilter/nf_conntrack_sip.c
1215
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_sip.c
1217
flush_expectations(ct, true);
net/netfilter/nf_conntrack_sip.c
1231
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_sip.c
1232
struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct);
net/netfilter/nf_conntrack_sip.c
1245
if (ct->status & IPS_EXPECTED)
net/netfilter/nf_conntrack_sip.c
1256
if (ct_sip_get_header(ct, *dptr, 0, *datalen, SIP_HDR_EXPIRES,
net/netfilter/nf_conntrack_sip.c
1260
ret = ct_sip_parse_header_uri(ct, *dptr, NULL, *datalen,
net/netfilter/nf_conntrack_sip.c
1264
nf_ct_helper_log(skb, ct, "cannot parse contact");
net/netfilter/nf_conntrack_sip.c
1270
if (!nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.src.u3, &daddr))
net/netfilter/nf_conntrack_sip.c
1273
if (ct_sip_parse_transport(ct, *dptr, matchoff + matchlen, *datalen,
net/netfilter/nf_conntrack_sip.c
1277
if (ct_sip_parse_numerical_param(ct, *dptr,
net/netfilter/nf_conntrack_sip.c
1280
nf_ct_helper_log(skb, ct, "cannot parse expires");
net/netfilter/nf_conntrack_sip.c
1289
exp = nf_ct_expect_alloc(ct);
net/netfilter/nf_conntrack_sip.c
129
static int media_len(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
1291
nf_ct_helper_log(skb, ct, "cannot alloc expectation");
net/netfilter/nf_conntrack_sip.c
1297
saddr = &ct->tuplehash[!dir].tuple.src.u3;
net/netfilter/nf_conntrack_sip.c
1299
helper = rcu_dereference(nfct_help(ct)->helper);
net/netfilter/nf_conntrack_sip.c
1303
nf_ct_expect_init(exp, SIP_EXPECT_SIGNALLING, nf_ct_l3num(ct),
net/netfilter/nf_conntrack_sip.c
1310
if (hooks && ct->status & IPS_NAT_MASK)
net/netfilter/nf_conntrack_sip.c
1315
nf_ct_helper_log(skb, ct, "cannot add expectation");
net/netfilter/nf_conntrack_sip.c
132
int len = string_len(ct, dptr, limit, shift);
net/netfilter/nf_conntrack_sip.c
1334
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_sip.c
1335
struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct);
net/netfilter/nf_conntrack_sip.c
1360
if (ct_sip_get_header(ct, *dptr, 0, *datalen, SIP_HDR_EXPIRES,
net/netfilter/nf_conntrack_sip.c
1367
ret = ct_sip_parse_header_uri(ct, *dptr, &coff, *datalen,
net/netfilter/nf_conntrack_sip.c
1372
nf_ct_helper_log(skb, ct, "cannot parse contact");
net/netfilter/nf_conntrack_sip.c
1378
if (!nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.dst.u3, &addr))
net/netfilter/nf_conntrack_sip.c
1381
if (ct_sip_parse_transport(ct, *dptr, matchoff + matchlen,
net/netfilter/nf_conntrack_sip.c
1385
ret = ct_sip_parse_numerical_param(ct, *dptr,
net/netfilter/nf_conntrack_sip.c
1390
nf_ct_helper_log(skb, ct, "cannot parse expires");
net/netfilter/nf_conntrack_sip.c
1395
if (refresh_signalling_expectation(ct, &addr, proto, port,
net/netfilter/nf_conntrack_sip.c
140
return len + digits_len(ct, dptr, limit, shift);
net/netfilter/nf_conntrack_sip.c
1401
flush_expectations(ct, false);
net/netfilter/nf_conntrack_sip.c
1419
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_sip.c
1427
nf_ct_helper_log(skb, ct, "cannot get code");
net/netfilter/nf_conntrack_sip.c
143
static int sip_parse_addr(const struct nf_conn *ct, const char *cp,
net/netfilter/nf_conntrack_sip.c
1431
if (ct_sip_get_header(ct, *dptr, 0, *datalen, SIP_HDR_CSEQ,
net/netfilter/nf_conntrack_sip.c
1433
nf_ct_helper_log(skb, ct, "cannot parse cseq");
net/netfilter/nf_conntrack_sip.c
1438
nf_ct_helper_log(skb, ct, "cannot get cseq");
net/netfilter/nf_conntrack_sip.c
1463
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_sip.c
1464
struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct);
net/netfilter/nf_conntrack_sip.c
1477
if (ct_sip_parse_header_uri(ct, *dptr, NULL, *datalen,
net/netfilter/nf_conntrack_sip.c
1480
port != ct->tuplehash[dir].tuple.src.u.udp.port &&
net/netfilter/nf_conntrack_sip.c
1481
nf_inet_addr_cmp(&addr, &ct->tuplehash[dir].tuple.src.u3))
net/netfilter/nf_conntrack_sip.c
1497
if (ct_sip_get_header(ct, *dptr, 0, *datalen, SIP_HDR_CSEQ,
net/netfilter/nf_conntrack_sip.c
1499
nf_ct_helper_log(skb, ct, "cannot parse cseq");
net/netfilter/nf_conntrack_sip.c
150
if (!ct)
net/netfilter/nf_conntrack_sip.c
1504
nf_ct_helper_log(skb, ct, "cannot get cseq");
net/netfilter/nf_conntrack_sip.c
1514
static int process_sip_msg(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_conntrack_sip.c
1526
if (ret == NF_ACCEPT && ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_sip.c
1530
nf_ct_helper_log(skb, ct, "cannot NAT SIP message");
net/netfilter/nf_conntrack_sip.c
1539
struct nf_conn *ct, enum ip_conntrack_info ctinfo)
net/netfilter/nf_conntrack_sip.c
154
switch (nf_ct_l3num(ct)) {
net/netfilter/nf_conntrack_sip.c
1563
nf_ct_refresh(ct, sip_timeout * HZ);
net/netfilter/nf_conntrack_sip.c
1574
if (ct_sip_get_header(ct, dptr, 0, datalen,
net/netfilter/nf_conntrack_sip.c
1602
ret = process_sip_msg(skb, ct, protoff, dataoff,
net/netfilter/nf_conntrack_sip.c
1615
if (ret == NF_ACCEPT && ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_sip.c
1627
struct nf_conn *ct, enum ip_conntrack_info ctinfo)
net/netfilter/nf_conntrack_sip.c
1637
nf_ct_refresh(ct, sip_timeout * HZ);
net/netfilter/nf_conntrack_sip.c
1647
return process_sip_msg(skb, ct, protoff, dataoff, &dptr, &datalen);
net/netfilter/nf_conntrack_sip.c
185
static int epaddr_len(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
191
if (!sip_parse_addr(ct, dptr, &dptr, &addr, limit, true)) {
net/netfilter/nf_conntrack_sip.c
199
dptr += digits_len(ct, dptr, limit, shift);
net/netfilter/nf_conntrack_sip.c
205
static int skp_epaddr_len(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
228
return epaddr_len(ct, dptr, limit, shift);
net/netfilter/nf_conntrack_sip.c
237
int ct_sip_parse_request(const struct nf_conn *ct,
net/netfilter/nf_conntrack_sip.c
248
mlen = string_len(ct, dptr, limit, NULL);
net/netfilter/nf_conntrack_sip.c
264
if (!skp_epaddr_len(ct, dptr, limit, &shift))
net/netfilter/nf_conntrack_sip.c
268
if (!sip_parse_addr(ct, dptr, &end, addr, limit, true))
net/netfilter/nf_conntrack_sip.c
367
int ct_sip_get_header(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
424
*matchlen = hdr->match_len(ct, dptr, limit, &shift);
net/netfilter/nf_conntrack_sip.c
435
static int ct_sip_next_header(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
456
*matchlen = hdr->match_len(ct, dptr, limit, &shift);
net/netfilter/nf_conntrack_sip.c
465
static int ct_sip_walk_headers(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
474
ret = ct_sip_next_header(ct, dptr, dataoff, datalen,
net/netfilter/nf_conntrack_sip.c
486
ret = ct_sip_get_header(ct, dptr, dataoff, datalen,
net/netfilter/nf_conntrack_sip.c
505
int ct_sip_parse_header_uri(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
515
ret = ct_sip_walk_headers(ct, dptr, dataoff ? *dataoff : 0, datalen,
net/netfilter/nf_conntrack_sip.c
521
if (!sip_parse_addr(ct, dptr + *matchoff, &c, addr, limit, true))
net/netfilter/nf_conntrack_sip.c
538
static int ct_sip_parse_param(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
566
int ct_sip_parse_address_param(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
584
if (!sip_parse_addr(ct, start, &end, addr, limit, delim))
net/netfilter/nf_conntrack_sip.c
593
int ct_sip_parse_numerical_param(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
623
static int ct_sip_parse_transport(struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
629
if (ct_sip_parse_param(ct, dptr, dataoff, datalen, "transport=",
net/netfilter/nf_conntrack_sip.c
638
if (*proto != nf_ct_protonum(ct))
net/netfilter/nf_conntrack_sip.c
641
*proto = nf_ct_protonum(ct);
net/netfilter/nf_conntrack_sip.c
646
static int sdp_parse_addr(const struct nf_conn *ct, const char *cp,
net/netfilter/nf_conntrack_sip.c
654
switch (nf_ct_l3num(ct)) {
net/netfilter/nf_conntrack_sip.c
66
static int string_len(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
673
static int sdp_addr_len(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
679
if (!sdp_parse_addr(ct, dptr, &dptr, &addr, limit)) {
net/netfilter/nf_conntrack_sip.c
727
int ct_sip_get_sdp_header(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
737
hdrs = nf_ct_l3num(ct) == NFPROTO_IPV4 ? ct_sdp_hdrs_v4 : ct_sdp_hdrs_v6;
net/netfilter/nf_conntrack_sip.c
771
*matchlen = hdr->match_len(ct, dptr, limit, &shift);
net/netfilter/nf_conntrack_sip.c
78
static int digits_len(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
781
static int ct_sip_parse_sdp_addr(const struct nf_conn *ct, const char *dptr,
net/netfilter/nf_conntrack_sip.c
790
ret = ct_sip_get_sdp_header(ct, dptr, dataoff, datalen, type, term,
net/netfilter/nf_conntrack_sip.c
795
if (!sdp_parse_addr(ct, dptr + *matchoff, NULL, addr,
net/netfilter/nf_conntrack_sip.c
801
static int refresh_signalling_expectation(struct nf_conn *ct,
net/netfilter/nf_conntrack_sip.c
806
struct nf_conn_help *help = nfct_help(ct);
net/netfilter/nf_conntrack_sip.c
828
static void flush_expectations(struct nf_conn *ct, bool media)
net/netfilter/nf_conntrack_sip.c
830
struct nf_conn_help *help = nfct_help(ct);
net/netfilter/nf_conntrack_sip.c
855
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_conntrack_sip.c
856
struct net *net = nf_ct_net(ct);
net/netfilter/nf_conntrack_sip.c
867
if (!nf_inet_addr_cmp(daddr, &ct->tuplehash[dir].tuple.src.u3))
net/netfilter/nf_conntrack_sip.c
869
saddr = &ct->tuplehash[!dir].tuple.src.u3;
net/netfilter/nf_conntrack_sip.c
878
switch (nf_ct_l3num(ct)) {
net/netfilter/nf_conntrack_sip.c
918
tuple.src.l3num = nf_ct_l3num(ct);
net/netfilter/nf_conntrack_sip.c
924
exp = __nf_ct_expect_find(net, nf_ct_zone(ct), &tuple);
net/netfilter/nf_conntrack_sip.c
926
if (!exp || exp->master == ct ||
net/netfilter/nf_conntrack_sip.c
927
exp->helper != nfct_help(ct)->helper ||
net/netfilter/nf_conntrack_sip.c
934
ct->status & IPS_NAT_MASK) {
net/netfilter/nf_conntrack_sip.c
959
rtp_exp = nf_ct_expect_alloc(ct);
net/netfilter/nf_conntrack_sip.c
962
nf_ct_expect_init(rtp_exp, class, nf_ct_l3num(ct), saddr, daddr,
net/netfilter/nf_conntrack_sip.c
965
rtcp_exp = nf_ct_expect_alloc(ct);
net/netfilter/nf_conntrack_sip.c
968
nf_ct_expect_init(rtcp_exp, class, nf_ct_l3num(ct), saddr, daddr,
net/netfilter/nf_conntrack_sip.c
972
if (hooks && ct->status & IPS_NAT_MASK && !direct_rtp)
net/netfilter/nf_conntrack_snmp.c
30
struct nf_conn *ct,
net/netfilter/nf_conntrack_snmp.c
35
struct nf_conn *ct,
net/netfilter/nf_conntrack_snmp.c
40
nf_conntrack_broadcast_help(skb, ct, ctinfo, timeout);
net/netfilter/nf_conntrack_snmp.c
43
if (nf_nat_snmp && ct->status & IPS_NAT_MASK)
net/netfilter/nf_conntrack_snmp.c
44
return nf_nat_snmp(skb, protoff, ct, ctinfo);
net/netfilter/nf_conntrack_standalone.c
1019
table[NF_SYSCTL_CT_CHECKSUM].data = &net->ct.sysctl_checksum;
net/netfilter/nf_conntrack_standalone.c
1020
table[NF_SYSCTL_CT_LOG_INVALID].data = &net->ct.sysctl_log_invalid;
net/netfilter/nf_conntrack_standalone.c
1021
table[NF_SYSCTL_CT_ACCT].data = &net->ct.sysctl_acct;
net/netfilter/nf_conntrack_standalone.c
1023
table[NF_SYSCTL_CT_EVENTS].data = &net->ct.sysctl_events;
net/netfilter/nf_conntrack_standalone.c
1026
table[NF_SYSCTL_CT_TIMESTAMP].data = &net->ct.sysctl_tstamp;
net/netfilter/nf_conntrack_standalone.c
1094
net->ct.sysctl_checksum = 1;
net/netfilter/nf_conntrack_standalone.c
114
struct nf_conn *ct = nf_ct_tuplehash_to_ctrack(h);
net/netfilter/nf_conntrack_standalone.c
117
if (!net_eq(net, nf_ct_net(ct)))
net/netfilter/nf_conntrack_standalone.c
187
static void ct_show_secctx(struct seq_file *s, const struct nf_conn *ct)
net/netfilter/nf_conntrack_standalone.c
192
ret = security_secid_to_secctx(ct->secmark, &ctx);
net/netfilter/nf_conntrack_standalone.c
201
static inline void ct_show_secctx(struct seq_file *s, const struct nf_conn *ct)
net/netfilter/nf_conntrack_standalone.c
207
static void ct_show_zone(struct seq_file *s, const struct nf_conn *ct,
net/netfilter/nf_conntrack_standalone.c
210
const struct nf_conntrack_zone *zone = nf_ct_zone(ct);
net/netfilter/nf_conntrack_standalone.c
229
static inline void ct_show_zone(struct seq_file *s, const struct nf_conn *ct,
net/netfilter/nf_conntrack_standalone.c
236
static void ct_show_delta_time(struct seq_file *s, const struct nf_conn *ct)
net/netfilter/nf_conntrack_standalone.c
242
tstamp = nf_conn_tstamp_find(ct);
net/netfilter/nf_conntrack_standalone.c
257
ct_show_delta_time(struct seq_file *s, const struct nf_conn *ct)
net/netfilter/nf_conntrack_standalone.c
288
seq_print_acct(struct seq_file *s, const struct nf_conn *ct, int dir)
net/netfilter/nf_conntrack_standalone.c
293
acct = nf_conn_acct_find(ct);
net/netfilter/nf_conntrack_standalone.c
307
struct nf_conn *ct = nf_ct_tuplehash_to_ctrack(hash);
net/netfilter/nf_conntrack_standalone.c
312
WARN_ON(!ct);
net/netfilter/nf_conntrack_standalone.c
313
if (unlikely(!refcount_inc_not_zero(&ct->ct_general.use)))
net/netfilter/nf_conntrack_standalone.c
319
if (nf_ct_should_gc(ct)) {
net/netfilter/nf_conntrack_standalone.c
323
nf_ct_kill(ct);
net/netfilter/nf_conntrack_standalone.c
331
if (!net_eq(nf_ct_net(ct), net))
net/netfilter/nf_conntrack_standalone.c
334
l4proto = nf_ct_l4proto_find(nf_ct_protonum(ct));
net/netfilter/nf_conntrack_standalone.c
338
l3proto_name(nf_ct_l3num(ct)), nf_ct_l3num(ct),
net/netfilter/nf_conntrack_standalone.c
339
l4proto_name(l4proto->l4proto), nf_ct_protonum(ct));
net/netfilter/nf_conntrack_standalone.c
341
if (!test_bit(IPS_OFFLOAD_BIT, &ct->status))
net/netfilter/nf_conntrack_standalone.c
342
seq_printf(s, "%ld ", nf_ct_expires(ct) / HZ);
net/netfilter/nf_conntrack_standalone.c
345
l4proto->print_conntrack(s, ct);
net/netfilter/nf_conntrack_standalone.c
347
print_tuple(s, &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple,
net/netfilter/nf_conntrack_standalone.c
350
ct_show_zone(s, ct, NF_CT_ZONE_DIR_ORIG);
net/netfilter/nf_conntrack_standalone.c
355
seq_print_acct(s, ct, IP_CT_DIR_ORIGINAL);
net/netfilter/nf_conntrack_standalone.c
357
if (!(test_bit(IPS_SEEN_REPLY_BIT, &ct->status)))
net/netfilter/nf_conntrack_standalone.c
360
print_tuple(s, &ct->tuplehash[IP_CT_DIR_REPLY].tuple, l4proto);
net/netfilter/nf_conntrack_standalone.c
362
ct_show_zone(s, ct, NF_CT_ZONE_DIR_REPL);
net/netfilter/nf_conntrack_standalone.c
364
seq_print_acct(s, ct, IP_CT_DIR_REPLY);
net/netfilter/nf_conntrack_standalone.c
366
if (test_bit(IPS_HW_OFFLOAD_BIT, &ct->status))
net/netfilter/nf_conntrack_standalone.c
368
else if (test_bit(IPS_OFFLOAD_BIT, &ct->status))
net/netfilter/nf_conntrack_standalone.c
370
else if (test_bit(IPS_ASSURED_BIT, &ct->status))
net/netfilter/nf_conntrack_standalone.c
377
seq_printf(s, "mark=%u ", READ_ONCE(ct->mark));
net/netfilter/nf_conntrack_standalone.c
380
ct_show_secctx(s, ct);
net/netfilter/nf_conntrack_standalone.c
381
ct_show_zone(s, ct, NF_CT_DEFAULT_ZONE_DIR);
net/netfilter/nf_conntrack_standalone.c
382
ct_show_delta_time(s, ct);
net/netfilter/nf_conntrack_standalone.c
384
seq_printf(s, "use=%u\n", refcount_read(&ct->ct_general.use));
net/netfilter/nf_conntrack_standalone.c
391
nf_ct_put(ct);
net/netfilter/nf_conntrack_standalone.c
414
return per_cpu_ptr(net->ct.stat, cpu);
net/netfilter/nf_conntrack_standalone.c
429
return per_cpu_ptr(net->ct.stat, cpu);
net/netfilter/nf_conntrack_standalone.c
669
.data = &init_net.ct.sysctl_checksum,
net/netfilter/nf_conntrack_standalone.c
678
.data = &init_net.ct.sysctl_log_invalid,
net/netfilter/nf_conntrack_standalone.c
694
.data = &init_net.ct.sysctl_acct,
net/netfilter/nf_conntrack_standalone.c
704
.data = &init_net.ct.sysctl_events,
net/netfilter/nf_conntrack_standalone.c
715
.data = &init_net.ct.sysctl_tstamp,
net/netfilter/nf_conntrack_tftp.c
43
struct nf_conn *ct,
net/netfilter/nf_conntrack_tftp.c
62
nf_ct_dump_tuple(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple);
net/netfilter/nf_conntrack_tftp.c
63
nf_ct_dump_tuple(&ct->tuplehash[IP_CT_DIR_REPLY].tuple);
net/netfilter/nf_conntrack_tftp.c
65
exp = nf_ct_expect_alloc(ct);
net/netfilter/nf_conntrack_tftp.c
67
nf_ct_helper_log(skb, ct, "cannot alloc expectation");
net/netfilter/nf_conntrack_tftp.c
70
tuple = &ct->tuplehash[IP_CT_DIR_REPLY].tuple;
net/netfilter/nf_conntrack_tftp.c
72
nf_ct_l3num(ct),
net/netfilter/nf_conntrack_tftp.c
80
if (nf_nat_tftp && ct->status & IPS_NAT_MASK)
net/netfilter/nf_conntrack_tftp.c
83
nf_ct_helper_log(skb, ct, "cannot add expectation");
net/netfilter/nf_conntrack_timeout.c
106
timeout_ext = nf_ct_timeout_ext_add(ct, timeout, GFP_ATOMIC);
net/netfilter/nf_conntrack_timeout.c
125
void nf_ct_destroy_timeout(struct nf_conn *ct)
net/netfilter/nf_conntrack_timeout.c
134
timeout_ext = nf_ct_timeout_find(ct);
net/netfilter/nf_conntrack_timeout.c
28
static int untimeout(struct nf_conn *ct, void *timeout)
net/netfilter/nf_conntrack_timeout.c
30
struct nf_conn_timeout *timeout_ext = nf_ct_timeout_find(ct);
net/netfilter/nf_conntrack_timeout.c
64
int nf_ct_set_timeout(struct net *net, struct nf_conn *ct,
net/netfilter/nf_conntrack_timestamp.c
24
net->ct.sysctl_tstamp = nf_ct_tstamp;
net/netfilter/nf_flow_table_core.c
173
static void flow_offload_fixup_tcp(struct nf_conn *ct, u8 tcp_state)
net/netfilter/nf_flow_table_core.c
175
struct ip_ct_tcp *tcp = &ct->proto.tcp;
net/netfilter/nf_flow_table_core.c
177
spin_lock_bh(&ct->lock);
net/netfilter/nf_flow_table_core.c
183
ct->proto.tcp.seen[0].flags |= IP_CT_TCP_FLAG_CLOSE_INIT;
net/netfilter/nf_flow_table_core.c
193
spin_unlock_bh(&ct->lock);
net/netfilter/nf_flow_table_core.c
198
struct nf_conn *ct = flow->ct;
net/netfilter/nf_flow_table_core.c
199
struct net *net = nf_ct_net(ct);
net/netfilter/nf_flow_table_core.c
200
int l4num = nf_ct_protonum(ct);
net/netfilter/nf_flow_table_core.c
215
flow_offload_fixup_tcp(ct, TCP_CONNTRACK_CLOSE);
net/netfilter/nf_flow_table_core.c
219
tcp_state = READ_ONCE(ct->proto.tcp.state);
net/netfilter/nf_flow_table_core.c
220
flow_offload_fixup_tcp(ct, tcp_state);
net/netfilter/nf_flow_table_core.c
229
test_bit(IPS_SEEN_REPLY_BIT, &ct->status) ?
net/netfilter/nf_flow_table_core.c
246
nf_flow_timeout_delta(READ_ONCE(ct->timeout)) > (__s32)timeout)
net/netfilter/nf_flow_table_core.c
247
nf_ct_refresh(ct, timeout);
net/netfilter/nf_flow_table_core.c
26
struct nf_conntrack_tuple *ctt = &flow->ct->tuplehash[dir].tuple;
net/netfilter/nf_flow_table_core.c
265
nf_ct_put(flow->ct);
net/netfilter/nf_flow_table_core.c
307
struct net *net = nf_ct_net(flow->ct);
net/netfilter/nf_flow_table_core.c
308
int l4num = nf_ct_protonum(flow->ct);
net/netfilter/nf_flow_table_core.c
345
nf_ct_refresh(flow->ct, NF_CT_DAY);
net/netfilter/nf_flow_table_core.c
389
clear_bit(IPS_OFFLOAD_BIT, &flow->ct->status);
net/netfilter/nf_flow_table_core.c
413
if (unlikely(nf_ct_is_dying(flow->ct)))
net/netfilter/nf_flow_table_core.c
467
static u32 nf_flow_table_tcp_timeout(const struct nf_conn *ct)
net/netfilter/nf_flow_table_core.c
469
u8 state = READ_ONCE(ct->proto.tcp.state);
net/netfilter/nf_flow_table_core.c
505
static void nf_flow_table_extend_ct_timeout(struct nf_conn *ct)
net/netfilter/nf_flow_table_core.c
508
u32 expires = nf_ct_expires(ct);
net/netfilter/nf_flow_table_core.c
517
if (!refcount_inc_not_zero(&ct->ct_general.use))
net/netfilter/nf_flow_table_core.c
523
if (nf_ct_is_confirmed(ct) &&
net/netfilter/nf_flow_table_core.c
524
test_bit(IPS_OFFLOAD_BIT, &ct->status)) {
net/netfilter/nf_flow_table_core.c
525
u8 l4proto = nf_ct_protonum(ct);
net/netfilter/nf_flow_table_core.c
53
struct flow_offload *flow_offload_alloc(struct nf_conn *ct)
net/netfilter/nf_flow_table_core.c
533
new_timeout = nf_flow_table_tcp_timeout(ct);
net/netfilter/nf_flow_table_core.c
551
cmpxchg(&ct->timeout, expires, new_timeout);
net/netfilter/nf_flow_table_core.c
555
nf_ct_put(ct);
net/netfilter/nf_flow_table_core.c
564
nf_ct_is_dying(flow->ct) ||
net/netfilter/nf_flow_table_core.c
569
nf_flow_table_extend_ct_timeout(flow->ct);
net/netfilter/nf_flow_table_core.c
57
if (unlikely(nf_ct_is_dying(ct)))
net/netfilter/nf_flow_table_core.c
64
refcount_inc(&ct->ct_general.use);
net/netfilter/nf_flow_table_core.c
65
flow->ct = ct;
net/netfilter/nf_flow_table_core.c
70
if (ct->status & IPS_SRC_NAT)
net/netfilter/nf_flow_table_core.c
72
if (ct->status & IPS_DST_NAT)
net/netfilter/nf_flow_table_core.c
726
if (net_eq(nf_ct_net(flow->ct), dev_net(dev)) &&
net/netfilter/nf_flow_table_ip.c
1054
nf_ct_acct_update(flow->ct, tuplehash->tuple.dir, skb->len);
net/netfilter/nf_flow_table_ip.c
542
nf_ct_acct_update(flow->ct, tuplehash->tuple.dir, skb->len);
net/netfilter/nf_flow_table_offload.c
1026
nf_ct_acct_add(offload->flow->ct,
net/netfilter/nf_flow_table_offload.c
1030
nf_ct_acct_add(offload->flow->ct,
net/netfilter/nf_flow_table_offload.c
985
set_bit(IPS_HW_OFFLOAD_BIT, &offload->flow->ct->status);
net/netfilter/nf_flow_table_offload.c
993
clear_bit(IPS_HW_OFFLOAD_BIT, &offload->flow->ct->status);
net/netfilter/nf_flow_table_path.c
241
const struct nf_conn *ct,
net/netfilter/nf_flow_table_path.c
251
if (nft_dev_fill_forward_path(route, dst, ct, dir, ha, &stack) >= 0)
net/netfilter/nf_flow_table_path.c
284
int nft_flow_route(const struct nft_pktinfo *pkt, const struct nf_conn *ct,
net/netfilter/nf_flow_table_path.c
295
fl.u.ip4.daddr = ct->tuplehash[dir].tuple.src.u3.ip;
net/netfilter/nf_flow_table_path.c
296
fl.u.ip4.saddr = ct->tuplehash[!dir].tuple.src.u3.ip;
net/netfilter/nf_flow_table_path.c
304
fl.u.ip6.daddr = ct->tuplehash[dir].tuple.src.u3.in6;
net/netfilter/nf_flow_table_path.c
305
fl.u.ip6.saddr = ct->tuplehash[!dir].tuple.src.u3.in6;
net/netfilter/nf_flow_table_path.c
327
nft_dev_forward_path(pkt, route, ct, dir, ft);
net/netfilter/nf_flow_table_path.c
329
nft_dev_forward_path(pkt, route, ct, !dir, ft);
net/netfilter/nf_flow_table_path.c
47
const struct nf_conn *ct,
net/netfilter/nf_flow_table_path.c
51
const void *daddr = &ct->tuplehash[!dir].tuple.src.u3;
net/netfilter/nf_nat_bpf.c
35
struct nf_conn *ct = (struct nf_conn *)nfct;
net/netfilter/nf_nat_bpf.c
36
u16 proto = nf_ct_l3num(ct);
net/netfilter/nf_nat_bpf.c
52
return nf_nat_setup_info(ct, &range, manip) == NF_DROP ? -ENOMEM : 0;
net/netfilter/nf_nat_core.c
1001
hlist_del_rcu(&ct->nat_bysource);
net/netfilter/nf_nat_core.c
1005
static int nf_nat_proto_clean(struct nf_conn *ct, void *data)
net/netfilter/nf_nat_core.c
1007
if (nf_nat_proto_remove(ct, data))
net/netfilter/nf_nat_core.c
1016
if (test_and_clear_bit(IPS_SRC_NAT_DONE_BIT, &ct->status))
net/netfilter/nf_nat_core.c
1017
nf_nat_cleanup_conntrack(ct);
net/netfilter/nf_nat_core.c
1051
const struct nf_conn *ct,
net/netfilter/nf_nat_core.c
109
if (ct->status & statusbit) {
net/netfilter/nf_nat_core.c
1107
const struct nf_conn *ct, struct nf_nat_range2 *range)
net/netfilter/nf_nat_core.c
1119
switch (nf_ct_l3num(ct)) {
net/netfilter/nf_nat_core.c
1137
return nfnetlink_parse_nat_proto(tb[CTA_NAT_PROTO], ct, range);
net/netfilter/nf_nat_core.c
1142
nfnetlink_parse_nat_setup(struct nf_conn *ct,
net/netfilter/nf_nat_core.c
1152
if (WARN_ON_ONCE(nf_nat_initialized(ct, manip)))
net/netfilter/nf_nat_core.c
1157
return __nf_nat_alloc_null_binding(ct, manip) == NF_DROP ? -ENOMEM : 0;
net/netfilter/nf_nat_core.c
1159
err = nfnetlink_parse_nat(attr, ct, &range);
net/netfilter/nf_nat_core.c
1163
return nf_nat_setup_info(ct, &range, manip) == NF_DROP ? -ENOMEM : 0;
net/netfilter/nf_nat_core.c
1167
nfnetlink_parse_nat_setup(struct nf_conn *ct,
net/netfilter/nf_nat_core.c
122
const struct nf_conn *ct;
net/netfilter/nf_nat_core.c
128
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_core.c
129
if (ct == NULL)
net/netfilter/nf_nat_core.c
132
family = nf_ct_l3num(ct);
net/netfilter/nf_nat_core.c
141
nf_nat_ipv4_decode_session(skb, ct, dir, statusbit, fl);
net/netfilter/nf_nat_core.c
144
nf_nat_ipv6_decode_session(skb, ct, dir, statusbit, fl);
net/netfilter/nf_nat_core.c
227
static bool nf_nat_allow_clash(const struct nf_conn *ct)
net/netfilter/nf_nat_core.c
229
return nf_ct_l4proto_find(nf_ct_protonum(ct))->allow_clash;
net/netfilter/nf_nat_core.c
250
struct nf_conn *ct;
net/netfilter/nf_nat_core.c
295
ct = nf_ct_tuplehash_to_ctrack(thash);
net/netfilter/nf_nat_core.c
298
if (READ_ONCE(ct->status) & uses_nat)
net/netfilter/nf_nat_core.c
301
if (nf_ct_tuple_equal(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple,
net/netfilter/nf_nat_core.c
305
nf_ct_put(ct);
net/netfilter/nf_nat_core.c
309
static bool nf_nat_may_kill(struct nf_conn *ct, unsigned long flags)
net/netfilter/nf_nat_core.c
316
old_state = READ_ONCE(ct->proto.tcp.state);
net/netfilter/nf_nat_core.c
345
struct nf_conn *ct;
net/netfilter/nf_nat_core.c
368
ct = nf_ct_tuplehash_to_ctrack(thash);
net/netfilter/nf_nat_core.c
373
if (WARN_ON_ONCE(ct == ignored_conntrack))
net/netfilter/nf_nat_core.c
376
flags = READ_ONCE(ct->status);
net/netfilter/nf_nat_core.c
377
if (!nf_nat_may_kill(ct, flags))
net/netfilter/nf_nat_core.c
380
if (!nf_seq_has_advanced(ct, ignored_conntrack))
net/netfilter/nf_nat_core.c
384
if (nf_ct_kill(ct))
net/netfilter/nf_nat_core.c
387
nf_ct_put(ct);
net/netfilter/nf_nat_core.c
453
same_src(const struct nf_conn *ct,
net/netfilter/nf_nat_core.c
458
t = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple;
net/netfilter/nf_nat_core.c
473
const struct nf_conn *ct;
net/netfilter/nf_nat_core.c
475
hlist_for_each_entry_rcu(ct, &nf_nat_bysource[h], nat_bysource) {
net/netfilter/nf_nat_core.c
476
if (same_src(ct, tuple) &&
net/netfilter/nf_nat_core.c
477
net_eq(net, nf_ct_net(ct)) &&
net/netfilter/nf_nat_core.c
478
nf_ct_zone_equal(ct, zone, IP_CT_DIR_ORIGINAL)) {
net/netfilter/nf_nat_core.c
481
&ct->tuplehash[IP_CT_DIR_REPLY].tuple);
net/netfilter/nf_nat_core.c
501
const struct nf_conn *ct,
net/netfilter/nf_nat_core.c
525
if (nf_ct_l3num(ct) == NFPROTO_IPV4)
net/netfilter/nf_nat_core.c
573
const struct nf_conn *ct)
net/netfilter/nf_nat_core.c
59
const struct nf_conn *ct,
net/netfilter/nf_nat_core.c
597
if (!ct->master)
net/netfilter/nf_nat_core.c
64
const struct nf_conntrack_tuple *t = &ct->tuplehash[dir].tuple;
net/netfilter/nf_nat_core.c
67
if (ct->status & statusbit) {
net/netfilter/nf_nat_core.c
677
if (!nf_nat_used_tuple_harder(tuple, ct, attempts - i))
net/netfilter/nf_nat_core.c
698
struct nf_conn *ct,
net/netfilter/nf_nat_core.c
702
struct net *net = nf_ct_net(ct);
net/netfilter/nf_nat_core.c
704
zone = nf_ct_zone(ct);
net/netfilter/nf_nat_core.c
718
if (!nf_nat_used_tuple_new(orig_tuple, ct)) {
net/netfilter/nf_nat_core.c
725
if (!nf_nat_used_tuple(tuple, ct))
net/netfilter/nf_nat_core.c
732
find_best_ips_proto(zone, tuple, range, ct, maniptype);
net/netfilter/nf_nat_core.c
746
!nf_nat_used_tuple(tuple, ct)))
net/netfilter/nf_nat_core.c
748
} else if (!nf_nat_used_tuple(tuple, ct)) {
net/netfilter/nf_nat_core.c
754
nf_nat_l4proto_unique_tuple(tuple, range, maniptype, ct);
net/netfilter/nf_nat_core.c
757
struct nf_conn_nat *nf_ct_nat_ext_add(struct nf_conn *ct)
net/netfilter/nf_nat_core.c
759
struct nf_conn_nat *nat = nfct_nat(ct);
net/netfilter/nf_nat_core.c
763
if (!nf_ct_is_confirmed(ct))
net/netfilter/nf_nat_core.c
764
nat = nf_ct_ext_add(ct, NF_CT_EXT_NAT, GFP_ATOMIC);
net/netfilter/nf_nat_core.c
771
nf_nat_setup_info(struct nf_conn *ct,
net/netfilter/nf_nat_core.c
775
struct net *net = nf_ct_net(ct);
net/netfilter/nf_nat_core.c
779
if (nf_ct_is_confirmed(ct))
net/netfilter/nf_nat_core.c
78
if (ct->status & statusbit) {
net/netfilter/nf_nat_core.c
785
if (WARN_ON(nf_nat_initialized(ct, maniptype)))
net/netfilter/nf_nat_core.c
794
&ct->tuplehash[IP_CT_DIR_REPLY].tuple);
net/netfilter/nf_nat_core.c
796
get_unique_tuple(&new_tuple, &curr_tuple, range, ct, maniptype);
net/netfilter/nf_nat_core.c
803
nf_conntrack_alter_reply(ct, &reply);
net/netfilter/nf_nat_core.c
807
ct->status |= IPS_SRC_NAT;
net/netfilter/nf_nat_core.c
809
ct->status |= IPS_DST_NAT;
net/netfilter/nf_nat_core.c
811
if (nfct_help(ct) && !nfct_seqadj(ct))
net/netfilter/nf_nat_core.c
812
if (!nfct_seqadj_ext_add(ct))
net/netfilter/nf_nat_core.c
820
srchash = hash_by_src(net, nf_ct_zone(ct),
net/netfilter/nf_nat_core.c
821
&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple);
net/netfilter/nf_nat_core.c
824
hlist_add_head_rcu(&ct->nat_bysource,
net/netfilter/nf_nat_core.c
831
ct->status |= IPS_DST_NAT_DONE;
net/netfilter/nf_nat_core.c
833
ct->status |= IPS_SRC_NAT_DONE;
net/netfilter/nf_nat_core.c
840
__nf_nat_alloc_null_binding(struct nf_conn *ct, enum nf_nat_manip_type manip)
net/netfilter/nf_nat_core.c
848
ct->tuplehash[IP_CT_DIR_REPLY].tuple.dst.u3 :
net/netfilter/nf_nat_core.c
849
ct->tuplehash[IP_CT_DIR_REPLY].tuple.src.u3);
net/netfilter/nf_nat_core.c
855
return nf_nat_setup_info(ct, &range, manip);
net/netfilter/nf_nat_core.c
859
nf_nat_alloc_null_binding(struct nf_conn *ct, unsigned int hooknum)
net/netfilter/nf_nat_core.c
861
return __nf_nat_alloc_null_binding(ct, HOOK2MANIP(hooknum));
net/netfilter/nf_nat_core.c
866
unsigned int nf_nat_packet(struct nf_conn *ct,
net/netfilter/nf_nat_core.c
886
if (ct->status & statusbit)
net/netfilter/nf_nat_core.c
887
verdict = nf_nat_manip_pkt(skb, ct, mtype, dir);
net/netfilter/nf_nat_core.c
89
const struct nf_conn *ct,
net/netfilter/nf_nat_core.c
907
struct nf_conn *ct;
net/netfilter/nf_nat_core.c
913
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_core.c
919
if (!ct || in_vrf_postrouting(state))
net/netfilter/nf_nat_core.c
922
nat = nfct_nat(ct);
net/netfilter/nf_nat_core.c
932
if (!nf_nat_initialized(ct, maniptype)) {
net/netfilter/nf_nat_core.c
946
if (nf_nat_initialized(ct, maniptype))
net/netfilter/nf_nat_core.c
95
const struct nf_conntrack_tuple *t = &ct->tuplehash[dir].tuple;
net/netfilter/nf_nat_core.c
950
ret = nf_nat_alloc_null_binding(ct, state->hook);
net/netfilter/nf_nat_core.c
956
ct, ct->status);
net/netfilter/nf_nat_core.c
970
return nf_nat_packet(ct, ctinfo, state->hook, skb);
net/netfilter/nf_nat_core.c
973
nf_ct_kill_acct(ct, ctinfo, skb);
net/netfilter/nf_nat_core.c
98
if (ct->status & statusbit) {
net/netfilter/nf_nat_core.c
995
static void nf_nat_cleanup_conntrack(struct nf_conn *ct)
net/netfilter/nf_nat_core.c
999
h = hash_by_src(nf_ct_net(ct), nf_ct_zone(ct), &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple);
net/netfilter/nf_nat_ftp.c
102
if (!nf_nat_mangle_tcp_packet(skb, ct, ctinfo, protoff, matchoff,
net/netfilter/nf_nat_ftp.c
109
nf_ct_helper_log(skb, ct, "cannot mangle packet");
net/netfilter/nf_nat_ftp.c
33
static int nf_nat_ftp_fmt_cmd(struct nf_conn *ct, enum nf_ct_ftp_type type,
net/netfilter/nf_nat_ftp.c
48
if (nf_ct_l3num(ct) == NFPROTO_IPV4)
net/netfilter/nf_nat_ftp.c
74
struct nf_conn *ct = exp->master;
net/netfilter/nf_nat_ftp.c
81
newaddr = ct->tuplehash[!dir].tuple.dst.u3;
net/netfilter/nf_nat_ftp.c
95
buflen = nf_nat_ftp_fmt_cmd(ct, type, buffer, sizeof(buffer),
net/netfilter/nf_nat_helper.c
114
nf_nat_csum_recalc(skb, nf_ct_l3num(ct), IPPROTO_TCP,
net/netfilter/nf_nat_helper.c
118
nf_ct_seqadj_set(ct, ctinfo, tcph->seq,
net/netfilter/nf_nat_helper.c
137
struct nf_conn *ct,
net/netfilter/nf_nat_helper.c
170
nf_nat_csum_recalc(skb, nf_ct_l3num(ct), IPPROTO_UDP,
net/netfilter/nf_nat_helper.c
179
void nf_nat_follow_master(struct nf_conn *ct,
net/netfilter/nf_nat_helper.c
185
BUG_ON(ct->status & IPS_NAT_DONE_MASK);
net/netfilter/nf_nat_helper.c
190
= ct->master->tuplehash[!exp->dir].tuple.dst.u3;
net/netfilter/nf_nat_helper.c
191
nf_nat_setup_info(ct, &range, NF_NAT_MANIP_SRC);
net/netfilter/nf_nat_helper.c
197
= ct->master->tuplehash[!exp->dir].tuple.src.u3;
net/netfilter/nf_nat_helper.c
198
nf_nat_setup_info(ct, &range, NF_NAT_MANIP_DST);
net/netfilter/nf_nat_helper.c
87
struct nf_conn *ct,
net/netfilter/nf_nat_irc.c
40
struct nf_conn *ct = exp->master;
net/netfilter/nf_nat_irc.c
45
newaddr = ct->tuplehash[IP_CT_DIR_REPLY].tuple.dst.u3;
net/netfilter/nf_nat_irc.c
54
nf_ct_helper_log(skb, ct, "all ports in use");
net/netfilter/nf_nat_irc.c
76
if (!nf_nat_mangle_tcp_packet(skb, ct, ctinfo, protoff, matchoff,
net/netfilter/nf_nat_irc.c
78
nf_ct_helper_log(skb, ct, "cannot mangle packet");
net/netfilter/nf_nat_masquerade.c
169
static int inet_cmp(struct nf_conn *ct, void *ptr)
net/netfilter/nf_nat_masquerade.c
174
if (!device_cmp(ct, ptr))
net/netfilter/nf_nat_masquerade.c
177
tuple = &ct->tuplehash[IP_CT_DIR_REPLY].tuple;
net/netfilter/nf_nat_masquerade.c
247
struct nf_conn *ct;
net/netfilter/nf_nat_masquerade.c
250
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_masquerade.c
251
WARN_ON(!(ct && (ctinfo == IP_CT_NEW || ctinfo == IP_CT_RELATED ||
net/netfilter/nf_nat_masquerade.c
254
if (nat_ipv6_dev_get_saddr(nf_ct_net(ct), out,
net/netfilter/nf_nat_masquerade.c
258
nat = nf_ct_nat_ext_add(ct);
net/netfilter/nf_nat_masquerade.c
268
return nf_nat_setup_info(ct, &newrange, NF_NAT_MANIP_SRC);
net/netfilter/nf_nat_masquerade.c
32
struct nf_conn *ct;
net/netfilter/nf_nat_masquerade.c
41
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_masquerade.c
43
WARN_ON(!(ct && (ctinfo == IP_CT_NEW || ctinfo == IP_CT_RELATED ||
net/netfilter/nf_nat_masquerade.c
49
if (ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3.ip == 0)
net/netfilter/nf_nat_masquerade.c
60
nat = nf_ct_nat_ext_add(ct);
net/netfilter/nf_nat_masquerade.c
74
return nf_nat_setup_info(ct, &newrange, NF_NAT_MANIP_SRC);
net/netfilter/nf_nat_ovs.c
101
if (ctinfo != IP_CT_NEW && (ct->status & IPS_NAT_MASK) &&
net/netfilter/nf_nat_ovs.c
109
maniptype = ct->status & IPS_SRC_NAT
net/netfilter/nf_nat_ovs.c
112
maniptype = ct->status & IPS_SRC_NAT
net/netfilter/nf_nat_ovs.c
122
err = nf_ct_nat_execute(skb, ct, ctinfo, action, range, maniptype);
net/netfilter/nf_nat_ovs.c
123
if (err == NF_ACCEPT && ct->status & IPS_DST_NAT) {
net/netfilter/nf_nat_ovs.c
124
if (ct->status & IPS_SRC_NAT) {
net/netfilter/nf_nat_ovs.c
13
static int nf_ct_nat_execute(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_nat_ovs.c
130
err = nf_ct_nat_execute(skb, ct, ctinfo, action, range,
net/netfilter/nf_nat_ovs.c
133
err = nf_ct_nat_execute(skb, ct, ctinfo, action, NULL,
net/netfilter/nf_nat_ovs.c
32
if (!nf_nat_icmp_reply_translation(skb, ct, ctinfo,
net/netfilter/nf_nat_ovs.c
44
if (!nf_nat_icmpv6_reply_translation(skb, ct,
net/netfilter/nf_nat_ovs.c
58
if (!nf_nat_initialized(ct, maniptype)) {
net/netfilter/nf_nat_ovs.c
64
? nf_nat_setup_info(ct, range, maniptype)
net/netfilter/nf_nat_ovs.c
65
: nf_nat_alloc_null_binding(ct, hooknum);
net/netfilter/nf_nat_ovs.c
80
err = nf_nat_packet(ct, ctinfo, hooknum, skb);
net/netfilter/nf_nat_ovs.c
88
int nf_ct_nat(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_nat_ovs.c
98
if (!nf_ct_is_confirmed(ct) && !nf_ct_nat_ext_add(ct))
net/netfilter/nf_nat_proto.c
1013
const struct nf_conn *ct;
net/netfilter/nf_nat_proto.c
1022
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_proto.c
1023
if (ct) {
net/netfilter/nf_nat_proto.c
1026
if (!nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.dst.u3,
net/netfilter/nf_nat_proto.c
1027
&ct->tuplehash[!dir].tuple.src.u3)) {
net/netfilter/nf_nat_proto.c
1034
ct->tuplehash[dir].tuple.dst.protonum != IPPROTO_ICMPV6 &&
net/netfilter/nf_nat_proto.c
1035
ct->tuplehash[dir].tuple.dst.u.all !=
net/netfilter/nf_nat_proto.c
1036
ct->tuplehash[!dir].tuple.src.u.all) {
net/netfilter/nf_nat_proto.c
377
unsigned int nf_nat_manip_pkt(struct sk_buff *skb, struct nf_conn *ct,
net/netfilter/nf_nat_proto.c
384
nf_ct_invert_tuple(&target, &ct->tuplehash[!dir].tuple);
net/netfilter/nf_nat_proto.c
518
struct nf_conn *ct,
net/netfilter/nf_nat_proto.c
541
if ((ct->status & IPS_NAT_DONE_MASK) != IPS_NAT_DONE_MASK)
net/netfilter/nf_nat_proto.c
543
if (ct->status & IPS_NAT_MASK)
net/netfilter/nf_nat_proto.c
556
if (!(ct->status & statusbit))
net/netfilter/nf_nat_proto.c
560
&ct->tuplehash[!dir].tuple, !manip))
net/netfilter/nf_nat_proto.c
573
nf_ct_invert_tuple(&target, &ct->tuplehash[!dir].tuple);
net/netfilter/nf_nat_proto.c
586
struct nf_conn *ct;
net/netfilter/nf_nat_proto.c
589
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_proto.c
590
if (!ct)
net/netfilter/nf_nat_proto.c
595
if (!nf_nat_icmp_reply_translation(skb, ct, ctinfo,
net/netfilter/nf_nat_proto.c
662
const struct nf_conn *ct;
net/netfilter/nf_nat_proto.c
664
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_proto.c
665
if (!ct)
net/netfilter/nf_nat_proto.c
668
switch (nf_ct_protonum(ct)) {
net/netfilter/nf_nat_proto.c
680
return ct->tuplehash[!dir].tuple.dst.u.all != sport;
net/netfilter/nf_nat_proto.c
717
const struct nf_conn *ct;
net/netfilter/nf_nat_proto.c
731
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_proto.c
732
if (ct) {
net/netfilter/nf_nat_proto.c
735
if (ct->tuplehash[dir].tuple.src.u3.ip !=
net/netfilter/nf_nat_proto.c
736
ct->tuplehash[!dir].tuple.dst.u3.ip ||
net/netfilter/nf_nat_proto.c
737
(ct->tuplehash[dir].tuple.dst.protonum != IPPROTO_ICMP &&
net/netfilter/nf_nat_proto.c
738
ct->tuplehash[dir].tuple.src.u.all !=
net/netfilter/nf_nat_proto.c
739
ct->tuplehash[!dir].tuple.dst.u.all)) {
net/netfilter/nf_nat_proto.c
753
const struct nf_conn *ct;
net/netfilter/nf_nat_proto.c
762
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_proto.c
763
if (ct) {
net/netfilter/nf_nat_proto.c
766
if (ct->tuplehash[dir].tuple.dst.u3.ip !=
net/netfilter/nf_nat_proto.c
767
ct->tuplehash[!dir].tuple.src.u3.ip) {
net/netfilter/nf_nat_proto.c
774
ct->tuplehash[dir].tuple.dst.protonum != IPPROTO_ICMP &&
net/netfilter/nf_nat_proto.c
775
ct->tuplehash[dir].tuple.dst.u.all !=
net/netfilter/nf_nat_proto.c
776
ct->tuplehash[!dir].tuple.src.u.all) {
net/netfilter/nf_nat_proto.c
832
struct nf_conn *ct,
net/netfilter/nf_nat_proto.c
855
if ((ct->status & IPS_NAT_DONE_MASK) != IPS_NAT_DONE_MASK)
net/netfilter/nf_nat_proto.c
857
if (ct->status & IPS_NAT_MASK)
net/netfilter/nf_nat_proto.c
870
if (!(ct->status & statusbit))
net/netfilter/nf_nat_proto.c
874
&ct->tuplehash[!dir].tuple, !manip))
net/netfilter/nf_nat_proto.c
889
nf_ct_invert_tuple(&target, &ct->tuplehash[!dir].tuple);
net/netfilter/nf_nat_proto.c
902
struct nf_conn *ct;
net/netfilter/nf_nat_proto.c
908
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_proto.c
914
if (!ct)
net/netfilter/nf_nat_proto.c
923
if (!nf_nat_icmpv6_reply_translation(skb, ct, ctinfo,
net/netfilter/nf_nat_proto.c
977
const struct nf_conn *ct;
net/netfilter/nf_nat_proto.c
990
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_proto.c
991
if (ct) {
net/netfilter/nf_nat_proto.c
994
if (!nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.src.u3,
net/netfilter/nf_nat_proto.c
995
&ct->tuplehash[!dir].tuple.dst.u3) ||
net/netfilter/nf_nat_proto.c
996
(ct->tuplehash[dir].tuple.dst.protonum != IPPROTO_ICMPV6 &&
net/netfilter/nf_nat_proto.c
997
ct->tuplehash[dir].tuple.src.u.all !=
net/netfilter/nf_nat_proto.c
998
ct->tuplehash[!dir].tuple.dst.u.all)) {
net/netfilter/nf_nat_redirect.c
34
struct nf_conn *ct;
net/netfilter/nf_nat_redirect.c
36
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_redirect.c
46
return nf_nat_setup_info(ct, &newrange, NF_NAT_MANIP_DST);
net/netfilter/nf_nat_sip.c
101
struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct);
net/netfilter/nf_nat_sip.c
107
if (nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.src.u3, addr) &&
net/netfilter/nf_nat_sip.c
108
ct->tuplehash[dir].tuple.src.u.udp.port == port) {
net/netfilter/nf_nat_sip.c
109
newaddr = ct->tuplehash[!dir].tuple.dst.u3;
net/netfilter/nf_nat_sip.c
110
newport = ct->tuplehash[!dir].tuple.dst.u.udp.port;
net/netfilter/nf_nat_sip.c
111
} else if (nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.dst.u3, addr) &&
net/netfilter/nf_nat_sip.c
112
ct->tuplehash[dir].tuple.dst.u.udp.port == port) {
net/netfilter/nf_nat_sip.c
113
newaddr = ct->tuplehash[!dir].tuple.src.u3;
net/netfilter/nf_nat_sip.c
115
ct->tuplehash[!dir].tuple.src.u.udp.port;
net/netfilter/nf_nat_sip.c
122
buflen = sip_sprintf_addr_port(ct, buffer, &newaddr, ntohs(newport));
net/netfilter/nf_nat_sip.c
133
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_sip.c
138
if (ct_sip_parse_header_uri(ct, *dptr, NULL, *datalen, type, NULL,
net/netfilter/nf_nat_sip.c
150
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_sip.c
152
struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct);
net/netfilter/nf_nat_sip.c
161
if (ct_sip_parse_request(ct, *dptr, *datalen,
net/netfilter/nf_nat_sip.c
166
nf_ct_helper_log(skb, ct, "cannot mangle SIP message");
net/netfilter/nf_nat_sip.c
173
if (nf_ct_protonum(ct) == IPPROTO_TCP)
net/netfilter/nf_nat_sip.c
179
if (ct_sip_parse_header_uri(ct, *dptr, NULL, *datalen,
net/netfilter/nf_nat_sip.c
189
&ct->tuplehash[dir].tuple.src.u3) ||
net/netfilter/nf_nat_sip.c
190
port != ct->tuplehash[dir].tuple.src.u.udp.port)
net/netfilter/nf_nat_sip.c
194
&ct->tuplehash[dir].tuple.dst.u3) ||
net/netfilter/nf_nat_sip.c
195
port != ct->tuplehash[dir].tuple.dst.u.udp.port)
net/netfilter/nf_nat_sip.c
202
nf_ct_helper_log(skb, ct, "cannot mangle Via header");
net/netfilter/nf_nat_sip.c
210
if (ct_sip_parse_address_param(ct, *dptr, matchend, *datalen,
net/netfilter/nf_nat_sip.c
213
nf_inet_addr_cmp(&addr, &ct->tuplehash[dir].tuple.src.u3) &&
net/netfilter/nf_nat_sip.c
214
!nf_inet_addr_cmp(&addr, &ct->tuplehash[!dir].tuple.dst.u3)) {
net/netfilter/nf_nat_sip.c
215
buflen = sip_sprintf_addr(ct, buffer,
net/netfilter/nf_nat_sip.c
216
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nf_nat_sip.c
220
nf_ct_helper_log(skb, ct, "cannot mangle maddr");
net/netfilter/nf_nat_sip.c
227
if (ct_sip_parse_address_param(ct, *dptr, matchend, *datalen,
net/netfilter/nf_nat_sip.c
230
nf_inet_addr_cmp(&addr, &ct->tuplehash[dir].tuple.dst.u3) &&
net/netfilter/nf_nat_sip.c
231
!nf_inet_addr_cmp(&addr, &ct->tuplehash[!dir].tuple.src.u3)) {
net/netfilter/nf_nat_sip.c
232
buflen = sip_sprintf_addr(ct, buffer,
net/netfilter/nf_nat_sip.c
233
&ct->tuplehash[!dir].tuple.src.u3,
net/netfilter/nf_nat_sip.c
237
nf_ct_helper_log(skb, ct, "cannot mangle received");
net/netfilter/nf_nat_sip.c
244
if (ct_sip_parse_numerical_param(ct, *dptr, matchend, *datalen,
net/netfilter/nf_nat_sip.c
247
htons(n) == ct->tuplehash[dir].tuple.dst.u.udp.port &&
net/netfilter/nf_nat_sip.c
248
htons(n) != ct->tuplehash[!dir].tuple.src.u.udp.port) {
net/netfilter/nf_nat_sip.c
249
__be16 p = ct->tuplehash[!dir].tuple.src.u.udp.port;
net/netfilter/nf_nat_sip.c
253
nf_ct_helper_log(skb, ct, "cannot mangle rport");
net/netfilter/nf_nat_sip.c
263
while (ct_sip_parse_header_uri(ct, *dptr, &coff, *datalen,
net/netfilter/nf_nat_sip.c
270
nf_ct_helper_log(skb, ct, "cannot mangle contact");
net/netfilter/nf_nat_sip.c
277
nf_ct_helper_log(skb, ct, "cannot mangle SIP from/to");
net/netfilter/nf_nat_sip.c
286
nf_ct_helper_log(skb, ct, "cannot mangle packet");
net/netfilter/nf_nat_sip.c
293
if (!nf_nat_mangle_udp_packet(skb, ct, ctinfo, protoff,
net/netfilter/nf_nat_sip.c
295
nf_ct_helper_log(skb, ct, "cannot mangle packet");
net/netfilter/nf_nat_sip.c
307
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_sip.c
310
if (nf_ct_protonum(ct) != IPPROTO_TCP || off == 0)
net/netfilter/nf_nat_sip.c
314
nf_ct_seqadj_set(ct, ctinfo, th->seq, off);
net/netfilter/nf_nat_sip.c
318
static void nf_nat_sip_expected(struct nf_conn *ct,
net/netfilter/nf_nat_sip.c
321
struct nf_conn_help *help = nfct_help(ct->master);
net/netfilter/nf_nat_sip.c
327
BUG_ON(ct->status & IPS_NAT_DONE_MASK);
net/netfilter/nf_nat_sip.c
333
nf_nat_setup_info(ct, &range, NF_NAT_MANIP_DST);
net/netfilter/nf_nat_sip.c
341
if (pair_exp->tuple.src.l3num == nf_ct_l3num(ct) &&
net/netfilter/nf_nat_sip.c
342
pair_exp->tuple.dst.protonum == ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.dst.protonum &&
net/netfilter/nf_nat_sip.c
343
nf_inet_addr_cmp(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3, &pair_exp->saved_addr) &&
net/netfilter/nf_nat_sip.c
344
ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u.all == pair_exp->saved_proto.all) {
net/netfilter/nf_nat_sip.c
360
nf_inet_addr_cmp(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3,
net/netfilter/nf_nat_sip.c
361
&ct->master->tuplehash[exp->dir].tuple.src.u3)) {
net/netfilter/nf_nat_sip.c
364
= ct->master->tuplehash[!exp->dir].tuple.dst.u3;
net/netfilter/nf_nat_sip.c
370
nf_nat_setup_info(ct, &range, NF_NAT_MANIP_SRC);
net/netfilter/nf_nat_sip.c
381
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_sip.c
383
struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct);
net/netfilter/nf_nat_sip.c
391
if (nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.src.u3,
net/netfilter/nf_nat_sip.c
392
&ct->tuplehash[!dir].tuple.dst.u3))
net/netfilter/nf_nat_sip.c
395
newaddr = ct->tuplehash[!dir].tuple.dst.u3;
net/netfilter/nf_nat_sip.c
401
ct->tuplehash[dir].tuple.src.u.udp.port;
net/netfilter/nf_nat_sip.c
403
port = ntohs(ct->tuplehash[!dir].tuple.dst.u.udp.port);
net/netfilter/nf_nat_sip.c
41
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_sip.c
415
nf_ct_helper_log(skb, ct, "all ports in use for SIP");
net/netfilter/nf_nat_sip.c
421
buflen = sip_sprintf_addr_port(ct, buffer, &newaddr, port);
net/netfilter/nf_nat_sip.c
424
nf_ct_helper_log(skb, ct, "cannot mangle packet");
net/netfilter/nf_nat_sip.c
440
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_sip.c
446
if (ct_sip_get_sdp_header(ct, *dptr, 0, *datalen,
net/netfilter/nf_nat_sip.c
45
if (nf_ct_protonum(ct) == IPPROTO_TCP) {
net/netfilter/nf_nat_sip.c
453
if (ct_sip_get_header(ct, *dptr, 0, *datalen, SIP_HDR_CONTENT_LENGTH,
net/netfilter/nf_nat_sip.c
471
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_sip.c
474
if (ct_sip_get_sdp_header(ct, *dptr, sdpoff, *datalen, type, term,
net/netfilter/nf_nat_sip.c
490
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_sip.c
494
buflen = sip_sprintf_addr(ct, buffer, addr, false);
net/netfilter/nf_nat_sip.c
50
if (!__nf_nat_mangle_tcp_packet(skb, ct, ctinfo,
net/netfilter/nf_nat_sip.c
527
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_sip.c
532
buflen = sip_sprintf_addr(ct, buffer, addr, false);
net/netfilter/nf_nat_sip.c
569
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_sip.c
574
if (nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.src.u3,
net/netfilter/nf_nat_sip.c
575
&ct->tuplehash[!dir].tuple.dst.u3))
net/netfilter/nf_nat_sip.c
578
*rtp_addr = ct->tuplehash[!dir].tuple.dst.u3;
net/netfilter/nf_nat_sip.c
58
if (!nf_nat_mangle_udp_packet(skb, ct, ctinfo,
net/netfilter/nf_nat_sip.c
622
nf_ct_helper_log(skb, ct, "all ports in use for SDP media");
net/netfilter/nf_nat_sip.c
630
nf_ct_helper_log(skb, ct, "cannot mangle SDP message");
net/netfilter/nf_nat_sip.c
70
static int sip_sprintf_addr(const struct nf_conn *ct, char *buffer,
net/netfilter/nf_nat_sip.c
73
if (nf_ct_l3num(ct) == NFPROTO_IPV4)
net/netfilter/nf_nat_sip.c
83
static int sip_sprintf_addr_port(const struct nf_conn *ct, char *buffer,
net/netfilter/nf_nat_sip.c
86
if (nf_ct_l3num(ct) == NFPROTO_IPV4)
net/netfilter/nf_nat_sip.c
99
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_nat_tftp.c
27
const struct nf_conn *ct = exp->master;
net/netfilter/nf_nat_tftp.c
30
= ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u.udp.port;
net/netfilter/nf_synproxy_core.c
1063
struct nf_conn *ct;
net/netfilter/nf_synproxy_core.c
1072
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_synproxy_core.c
1073
if (!ct)
net/netfilter/nf_synproxy_core.c
1076
synproxy = nfct_synproxy(ct);
net/netfilter/nf_synproxy_core.c
1093
state = &ct->proto.tcp;
net/netfilter/nf_synproxy_core.c
1097
nf_ct_seqadj_init(ct, ctinfo, synproxy->isn -
net/netfilter/nf_synproxy_core.c
1110
nf_ct_seqadj_init(ct, ctinfo, 0);
net/netfilter/nf_synproxy_core.c
1138
nf_conntrack_event_cache(IPCT_SYNPROXY, ct);
net/netfilter/nf_synproxy_core.c
1149
nf_conntrack_event_cache(IPCT_SYNPROXY, ct);
net/netfilter/nf_synproxy_core.c
1159
nf_ct_seqadj_init(ct, ctinfo, synproxy->isn - ntohl(th->seq));
net/netfilter/nf_synproxy_core.c
1160
nf_conntrack_event_cache(IPCT_SEQADJ, ct);
net/netfilter/nf_synproxy_core.c
1171
synproxy_tstamp_adjust(skb, thoff, th, ct, ctinfo, synproxy);
net/netfilter/nf_synproxy_core.c
187
struct tcphdr *th, struct nf_conn *ct,
net/netfilter/nf_synproxy_core.c
334
struct nf_conn *ct;
net/netfilter/nf_synproxy_core.c
337
ct = nf_ct_tmpl_alloc(net, &nf_ct_zone_dflt, GFP_KERNEL);
net/netfilter/nf_synproxy_core.c
338
if (!ct)
net/netfilter/nf_synproxy_core.c
341
if (!nfct_seqadj_ext_add(ct))
net/netfilter/nf_synproxy_core.c
343
if (!nfct_synproxy_ext_add(ct))
net/netfilter/nf_synproxy_core.c
346
__set_bit(IPS_CONFIRMED_BIT, &ct->status);
net/netfilter/nf_synproxy_core.c
347
snet->tmpl = ct;
net/netfilter/nf_synproxy_core.c
362
nf_ct_tmpl_free(ct);
net/netfilter/nf_synproxy_core.c
646
struct nf_conn *ct;
net/netfilter/nf_synproxy_core.c
653
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_synproxy_core.c
654
if (!ct)
net/netfilter/nf_synproxy_core.c
657
synproxy = nfct_synproxy(ct);
net/netfilter/nf_synproxy_core.c
670
state = &ct->proto.tcp;
net/netfilter/nf_synproxy_core.c
674
nf_ct_seqadj_init(ct, ctinfo, synproxy->isn -
net/netfilter/nf_synproxy_core.c
687
nf_ct_seqadj_init(ct, ctinfo, 0);
net/netfilter/nf_synproxy_core.c
715
nf_conntrack_event_cache(IPCT_SYNPROXY, ct);
net/netfilter/nf_synproxy_core.c
726
nf_conntrack_event_cache(IPCT_SYNPROXY, ct);
net/netfilter/nf_synproxy_core.c
736
nf_ct_seqadj_init(ct, ctinfo, synproxy->isn - ntohl(th->seq));
net/netfilter/nf_synproxy_core.c
737
nf_conntrack_event_cache(IPCT_SEQADJ, ct);
net/netfilter/nf_synproxy_core.c
748
synproxy_tstamp_adjust(skb, thoff, th, ct, ctinfo, synproxy);
net/netfilter/nf_tables_trace.c
106
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nf_tables_trace.c
107
if (!ct) {
net/netfilter/nf_tables_trace.c
119
if (ct) {
net/netfilter/nf_tables_trace.c
120
u32 id = ct_hook->get_id(&ct->ct_general);
net/netfilter/nf_tables_trace.c
121
u32 status = READ_ONCE(ct->status);
net/netfilter/nf_tables_trace.c
99
const struct nf_conn *ct;
net/netfilter/nfnetlink_cthelper.c
113
nfnl_cthelper_to_nlattr(struct sk_buff *skb, const struct nf_conn *ct)
net/netfilter/nfnetlink_cthelper.c
115
const struct nf_conn_help *help = nfct_help(ct);
net/netfilter/nfnetlink_cthelper.c
42
struct nf_conn *ct, enum ip_conntrack_info ctinfo)
net/netfilter/nfnetlink_cthelper.c
47
help = nfct_help(ct);
net/netfilter/nfnetlink_cthelper.c
96
nfnl_cthelper_from_nlattr(struct nlattr *attr, struct nf_conn *ct)
net/netfilter/nfnetlink_cthelper.c
98
struct nf_conn_help *help = nfct_help(ct);
net/netfilter/nfnetlink_cttimeout.c
653
static int untimeout(struct nf_conn *ct, void *timeout)
net/netfilter/nfnetlink_cttimeout.c
655
struct nf_conn_timeout *timeout_ext = nf_ct_timeout_find(ct);
net/netfilter/nfnetlink_log.c
466
struct nf_conn *ct, enum ip_conntrack_info ctinfo)
net/netfilter/nfnetlink_log.c
640
if (ct && nfnl_ct->build(inst->skb, ct, ctinfo,
net/netfilter/nfnetlink_log.c
698
struct nf_conn *ct = NULL;
net/netfilter/nfnetlink_log.c
747
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nfnetlink_log.c
748
if (ct != NULL)
net/netfilter/nfnetlink_log.c
749
size += nfnl_ct->build_size(ct);
net/netfilter/nfnetlink_log.c
803
nfnl_ct, ct, ctinfo);
net/netfilter/nfnetlink_queue.c
1417
struct nf_conn *ct;
net/netfilter/nfnetlink_queue.c
1419
ct = nf_ct_get(entry->skb, ctinfo);
net/netfilter/nfnetlink_queue.c
1420
if (ct == NULL)
net/netfilter/nfnetlink_queue.c
1423
if (nfnl_ct->parse(nfqa[NFQA_CT], ct) < 0)
net/netfilter/nfnetlink_queue.c
1427
nfnl_ct->attach_expect(nfqa[NFQA_EXP], ct,
net/netfilter/nfnetlink_queue.c
1430
return ct;
net/netfilter/nfnetlink_queue.c
1482
struct nf_conn *ct = NULL;
net/netfilter/nfnetlink_queue.c
1506
ct = nfqnl_ct_parse(nfnl_ct, info->nlh, nfqa, entry,
net/netfilter/nfnetlink_queue.c
1526
if (ct && diff)
net/netfilter/nfnetlink_queue.c
1527
nfnl_ct->seq_adjust(entry->skb, ct, ctinfo, diff);
net/netfilter/nfnetlink_queue.c
407
struct nf_conn *ct = (void *)skb_nfct(entry->skb);
net/netfilter/nfnetlink_queue.c
409
if (!ct || nf_ct_is_confirmed(ct))
net/netfilter/nfnetlink_queue.c
424
return refcount_read(&ct->ct_general.use) > 1;
net/netfilter/nfnetlink_queue.c
640
struct nf_conn *ct = NULL;
net/netfilter/nfnetlink_queue.c
706
ct = nf_ct_get(entskb, &ctinfo);
net/netfilter/nfnetlink_queue.c
707
if (ct != NULL)
net/netfilter/nfnetlink_queue.c
708
size += nfnl_ct->build_size(ct);
net/netfilter/nfnetlink_queue.c
864
if (ct && nfnl_ct->build(skb, ct, ctinfo, NFQA_CT, NFQA_CT_INFO) < 0)
net/netfilter/nft_ct.c
102
*dest = jiffies_to_msecs(nf_ct_expires(ct));
net/netfilter/nft_ct.c
105
if (ct->master == NULL)
net/netfilter/nft_ct.c
107
help = nfct_help(ct->master);
net/netfilter/nft_ct.c
1167
struct nf_conn *ct = (struct nf_conn *)skb_nfct(pkt->skb);
net/netfilter/nft_ct.c
117
struct nf_conn_labels *labels = nf_ct_labels_find(ct);
net/netfilter/nft_ct.c
1171
if (!ct ||
net/netfilter/nft_ct.c
1172
nf_ct_is_confirmed(ct) ||
net/netfilter/nft_ct.c
1173
nf_ct_is_template(ct) ||
net/netfilter/nft_ct.c
1174
priv->l4proto != nf_ct_protonum(ct))
net/netfilter/nft_ct.c
1177
switch (nf_ct_l3num(ct)) {
net/netfilter/nft_ct.c
1192
if (test_bit(IPS_HELPER_BIT, &ct->status))
net/netfilter/nft_ct.c
1195
help = nf_ct_helper_ext_add(ct, GFP_ATOMIC);
net/netfilter/nft_ct.c
1198
set_bit(IPS_HELPER_BIT, &ct->status);
net/netfilter/nft_ct.c
1200
if ((ct->status & IPS_NAT_MASK) && !nfct_seqadj(ct))
net/netfilter/nft_ct.c
1201
if (!nfct_seqadj_ext_add(ct))
net/netfilter/nft_ct.c
128
const struct nf_conn_acct *acct = nf_conn_acct_find(ct);
net/netfilter/nft_ct.c
1347
struct nf_conn *ct;
net/netfilter/nft_ct.c
1349
ct = nf_ct_get(pkt->skb, &ctinfo);
net/netfilter/nft_ct.c
1350
if (!ct || nf_ct_is_confirmed(ct) || nf_ct_is_template(ct)) {
net/netfilter/nft_ct.c
1356
help = nfct_help(ct);
net/netfilter/nft_ct.c
1358
help = nf_ct_helper_ext_add(ct, GFP_ATOMIC);
net/netfilter/nft_ct.c
1369
l3num = nf_ct_l3num(ct);
net/netfilter/nft_ct.c
1371
exp = nf_ct_expect_alloc(ct);
net/netfilter/nft_ct.c
1377
&ct->tuplehash[!dir].tuple.src.u3,
net/netfilter/nft_ct.c
1378
&ct->tuplehash[!dir].tuple.dst.u3,
net/netfilter/nft_ct.c
138
const struct nf_conn_acct *acct = nf_conn_acct_find(ct);
net/netfilter/nft_ct.c
154
nft_reg_store8(dest, nf_ct_l3num(ct));
net/netfilter/nft_ct.c
157
nft_reg_store8(dest, nf_ct_protonum(ct));
net/netfilter/nft_ct.c
161
const struct nf_conntrack_zone *zone = nf_ct_zone(ct);
net/netfilter/nft_ct.c
174
*dest = nf_ct_get_id(ct);
net/netfilter/nft_ct.c
180
tuple = &ct->tuplehash[priv->dir].tuple;
net/netfilter/nft_ct.c
184
nf_ct_l3num(ct) == NFPROTO_IPV4 ? 4 : 16);
net/netfilter/nft_ct.c
188
nf_ct_l3num(ct) == NFPROTO_IPV4 ? 4 : 16);
net/netfilter/nft_ct.c
197
if (nf_ct_l3num(ct) != NFPROTO_IPV4)
net/netfilter/nft_ct.c
202
if (nf_ct_l3num(ct) != NFPROTO_IPV4)
net/netfilter/nft_ct.c
207
if (nf_ct_l3num(ct) != NFPROTO_IPV6)
net/netfilter/nft_ct.c
212
if (nf_ct_l3num(ct) != NFPROTO_IPV6)
net/netfilter/nft_ct.c
234
struct nf_conn *ct;
net/netfilter/nft_ct.c
237
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nft_ct.c
238
if (ct) /* already tracked */
net/netfilter/nft_ct.c
254
ct = this_cpu_read(nft_ct_pcpu_template);
net/netfilter/nft_ct.c
256
__refcount_inc(&ct->ct_general.use, &oldcnt);
net/netfilter/nft_ct.c
258
nf_ct_zone_add(ct, &zone);
net/netfilter/nft_ct.c
260
refcount_dec(&ct->ct_general.use);
net/netfilter/nft_ct.c
264
ct = nf_ct_tmpl_alloc(nft_net(pkt), &zone, GFP_ATOMIC);
net/netfilter/nft_ct.c
265
if (!ct) {
net/netfilter/nft_ct.c
269
__set_bit(IPS_CONFIRMED_BIT, &ct->status);
net/netfilter/nft_ct.c
272
nf_ct_set(skb, ct, IP_CT_NEW);
net/netfilter/nft_ct.c
286
struct nf_conn *ct;
net/netfilter/nft_ct.c
288
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/nft_ct.c
289
if (ct == NULL || nf_ct_is_template(ct))
net/netfilter/nft_ct.c
295
if (READ_ONCE(ct->mark) != value) {
net/netfilter/nft_ct.c
296
WRITE_ONCE(ct->mark, value);
net/netfilter/nft_ct.c
297
nf_conntrack_event_cache(IPCT_MARK, ct);
net/netfilter/nft_ct.c
303
if (ct->secmark != value) {
net/netfilter/nft_ct.c
304
ct->secmark = value;
net/netfilter/nft_ct.c
305
nf_conntrack_event_cache(IPCT_SECMARK, ct);
net/netfilter/nft_ct.c
311
nf_connlabels_replace(ct,
net/netfilter/nft_ct.c
319
struct nf_conntrack_ecache *e = nf_ct_ecache_find(ct);
net/netfilter/nft_ct.c
328
if (ctmask && !nf_ct_is_confirmed(ct))
net/netfilter/nft_ct.c
329
nf_ct_ecache_ext_add(ct, ctmask, 0, GFP_ATOMIC);
net/netfilter/nft_ct.c
348
struct nf_conn *ct;
net/netfilter/nft_ct.c
352
ct = per_cpu(nft_ct_pcpu_template, cpu);
net/netfilter/nft_ct.c
353
if (!ct)
net/netfilter/nft_ct.c
355
nf_ct_put(ct);
net/netfilter/nft_ct.c
59
const struct nf_conn *ct;
net/netfilter/nft_ct.c
65
ct = nf_ct_get(pkt->skb, &ctinfo);
net/netfilter/nft_ct.c
69
if (ct)
net/netfilter/nft_ct.c
707
const struct nft_ct *ct;
net/netfilter/nft_ct.c
714
ct = nft_expr_priv(track->regs[priv->dreg].selector);
net/netfilter/nft_ct.c
715
if (priv->key != ct->key) {
net/netfilter/nft_ct.c
81
if (ct == NULL)
net/netfilter/nft_ct.c
866
struct nf_conn *ct;
net/netfilter/nft_ct.c
868
ct = nf_ct_get(pkt->skb, &ctinfo);
net/netfilter/nft_ct.c
870
if (ct || ctinfo == IP_CT_UNTRACKED)
net/netfilter/nft_ct.c
873
nf_ct_set(skb, ct, IP_CT_UNTRACKED);
net/netfilter/nft_ct.c
89
*dest = ct->status;
net/netfilter/nft_ct.c
929
struct nf_conn *ct = (struct nf_conn *)skb_nfct(pkt->skb);
net/netfilter/nft_ct.c
93
*dest = READ_ONCE(ct->mark);
net/netfilter/nft_ct.c
936
if (!ct || nf_ct_is_template(ct) || nf_ct_is_confirmed(ct))
net/netfilter/nft_ct.c
939
timeout = nf_ct_timeout_find(ct);
net/netfilter/nft_ct.c
941
timeout = nf_ct_timeout_ext_add(ct, priv->timeout, GFP_ATOMIC);
net/netfilter/nft_ct.c
955
nf_ct_refresh(ct, values[0]);
net/netfilter/nft_ct.c
98
*dest = ct->secmark;
net/netfilter/nft_ct_fast.c
14
const struct nf_conn *ct;
net/netfilter/nft_ct_fast.c
17
ct = nf_ct_get(pkt->skb, &ctinfo);
net/netfilter/nft_ct_fast.c
21
if (ct)
net/netfilter/nft_ct_fast.c
33
if (!ct) {
net/netfilter/nft_ct_fast.c
43
*dest = ct->status;
net/netfilter/nft_ct_fast.c
47
*dest = ct->mark;
net/netfilter/nft_ct_fast.c
52
*dest = ct->secmark;
net/netfilter/nft_flow_offload.c
102
if (!nf_ct_is_confirmed(ct))
net/netfilter/nft_flow_offload.c
105
if (test_and_set_bit(IPS_OFFLOAD_BIT, &ct->status))
net/netfilter/nft_flow_offload.c
109
if (nft_flow_route(pkt, ct, &route, dir, priv->flowtable) < 0)
net/netfilter/nft_flow_offload.c
112
flow = flow_offload_alloc(ct);
net/netfilter/nft_flow_offload.c
118
flow_offload_ct_tcp(ct);
net/netfilter/nft_flow_offload.c
133
clear_bit(IPS_OFFLOAD_BIT, &ct->status);
net/netfilter/nft_flow_offload.c
41
static void flow_offload_ct_tcp(struct nf_conn *ct)
net/netfilter/nft_flow_offload.c
44
spin_lock_bh(&ct->lock);
net/netfilter/nft_flow_offload.c
45
ct->proto.tcp.seen[0].flags |= IP_CT_TCP_FLAG_BE_LIBERAL;
net/netfilter/nft_flow_offload.c
46
ct->proto.tcp.seen[1].flags |= IP_CT_TCP_FLAG_BE_LIBERAL;
net/netfilter/nft_flow_offload.c
47
spin_unlock_bh(&ct->lock);
net/netfilter/nft_flow_offload.c
61
struct nf_conn *ct;
net/netfilter/nft_flow_offload.c
67
ct = nf_ct_get(pkt->skb, &ctinfo);
net/netfilter/nft_flow_offload.c
68
if (!ct)
net/netfilter/nft_flow_offload.c
71
switch (ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.dst.protonum) {
net/netfilter/nft_flow_offload.c
76
!nf_conntrack_tcp_established(ct)))
net/netfilter/nft_flow_offload.c
85
if (ct->status & IPS_NAT_MASK)
net/netfilter/nft_flow_offload.c
87
tuple = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple;
net/netfilter/nft_flow_offload.c
98
if (nf_ct_ext_exist(ct, NF_CT_EXT_HELPER) ||
net/netfilter/nft_flow_offload.c
99
ct->status & (IPS_SEQ_ADJUST | IPS_NAT_CLASH))
net/netfilter/nft_nat.c
109
struct nf_conn *ct = nf_ct_get(pkt->skb, &ctinfo);
net/netfilter/nft_nat.c
125
regs->verdict.code = nf_nat_setup_info(ct, &range, priv->type);
net/netfilter/x_tables.c
1158
struct compat_xt_entry_target *ct = (struct compat_xt_entry_target *)t;
net/netfilter/x_tables.c
1160
u_int16_t tsize = ct->u.user.target_size;
net/netfilter/x_tables.c
1164
memcpy(t, ct, sizeof(*ct));
net/netfilter/x_tables.c
1166
target->compat_from_user(t->data, ct->data);
net/netfilter/x_tables.c
1168
unsafe_memcpy(t->data, ct->data, tsize - sizeof(*ct),
net/netfilter/x_tables.c
1186
struct compat_xt_entry_target __user *ct = *dstptr;
net/netfilter/x_tables.c
1190
if (XT_OBJ_TO_USER(ct, t, target, tsize))
net/netfilter/x_tables.c
1194
if (target->compat_to_user((void __user *)ct->data, t->data))
net/netfilter/x_tables.c
1197
if (COMPAT_XT_DATA_TO_USER(ct, t, target, tsize - sizeof(*ct)))
net/netfilter/xt_CONNSECMARK.c
35
struct nf_conn *ct;
net/netfilter/xt_CONNSECMARK.c
38
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_CONNSECMARK.c
39
if (ct && !ct->secmark) {
net/netfilter/xt_CONNSECMARK.c
40
ct->secmark = skb->secmark;
net/netfilter/xt_CONNSECMARK.c
41
nf_conntrack_event_cache(IPCT_SECMARK, ct);
net/netfilter/xt_CONNSECMARK.c
53
const struct nf_conn *ct;
net/netfilter/xt_CONNSECMARK.c
56
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_CONNSECMARK.c
57
if (ct && ct->secmark)
net/netfilter/xt_CONNSECMARK.c
58
skb->secmark = ct->secmark;
net/netfilter/xt_CT.c
105
xt_ct_set_timeout(struct nf_conn *ct, const struct xt_tgchk_param *par,
net/netfilter/xt_CT.c
119
return nf_ct_set_timeout(par->net, ct, par->family, l4proto->l4proto,
net/netfilter/xt_CT.c
160
struct nf_conn *ct;
net/netfilter/xt_CT.c
164
ct = NULL;
net/netfilter/xt_CT.c
185
ct = nf_ct_tmpl_alloc(par->net, &zone, GFP_KERNEL);
net/netfilter/xt_CT.c
186
if (!ct) {
net/netfilter/xt_CT.c
192
!nf_ct_ecache_ext_add(ct, info->ct_events, info->exp_events,
net/netfilter/xt_CT.c
204
ret = xt_ct_set_helper(ct, info->helper, par);
net/netfilter/xt_CT.c
21
static inline int xt_ct_target(struct sk_buff *skb, struct nf_conn *ct)
net/netfilter/xt_CT.c
215
ret = xt_ct_set_timeout(ct, par, info->timeout);
net/netfilter/xt_CT.c
219
__set_bit(IPS_CONFIRMED_BIT, &ct->status);
net/netfilter/xt_CT.c
221
info->ct = ct;
net/netfilter/xt_CT.c
225
help = nfct_help(ct);
net/netfilter/xt_CT.c
228
nf_ct_tmpl_free(ct);
net/netfilter/xt_CT.c
255
info->ct = info_v1.ct;
net/netfilter/xt_CT.c
27
if (ct) {
net/netfilter/xt_CT.c
28
refcount_inc(&ct->ct_general.use);
net/netfilter/xt_CT.c
283
struct nf_conn *ct = info->ct;
net/netfilter/xt_CT.c
286
if (ct) {
net/netfilter/xt_CT.c
29
nf_ct_set(skb, ct, IP_CT_NEW);
net/netfilter/xt_CT.c
290
help = nfct_help(ct);
net/netfilter/xt_CT.c
295
nf_ct_destroy_timeout(ct);
net/netfilter/xt_CT.c
296
nf_ct_put(info->ct);
net/netfilter/xt_CT.c
308
.ct = info->ct,
net/netfilter/xt_CT.c
31
nf_ct_set(skb, ct, IP_CT_UNTRACKED);
net/netfilter/xt_CT.c
345
.usersize = offsetof(struct xt_ct_target_info, ct),
net/netfilter/xt_CT.c
357
.usersize = offsetof(struct xt_ct_target_info, ct),
net/netfilter/xt_CT.c
369
.usersize = offsetof(struct xt_ct_target_info, ct),
net/netfilter/xt_CT.c
389
.usersize = offsetof(struct xt_ct_target_info, ct),
net/netfilter/xt_CT.c
401
.usersize = offsetof(struct xt_ct_target_info, ct),
net/netfilter/xt_CT.c
41
struct nf_conn *ct = info->ct;
net/netfilter/xt_CT.c
413
.usersize = offsetof(struct xt_ct_target_info, ct),
net/netfilter/xt_CT.c
43
return xt_ct_target(skb, ct);
net/netfilter/xt_CT.c
50
struct nf_conn *ct = info->ct;
net/netfilter/xt_CT.c
52
return xt_ct_target(skb, ct);
net/netfilter/xt_CT.c
74
xt_ct_set_helper(struct nf_conn *ct, const char *helper_name,
net/netfilter/xt_CT.c
94
help = nf_ct_helper_ext_add(ct, GFP_KERNEL);
net/netfilter/xt_HMARK.c
100
t->proto = nf_ct_protonum(ct);
net/netfilter/xt_HMARK.c
82
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_HMARK.c
86
if (ct == NULL)
net/netfilter/xt_HMARK.c
89
otuple = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple;
net/netfilter/xt_HMARK.c
90
rtuple = &ct->tuplehash[IP_CT_DIR_REPLY].tuple;
net/netfilter/xt_NETMAP.c
101
return nf_nat_setup_info(ct, &newrange, HOOK2MANIP(xt_hooknum(par)));
net/netfilter/xt_NETMAP.c
23
struct nf_conn *ct;
net/netfilter/xt_NETMAP.c
28
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_NETMAP.c
51
return nf_nat_setup_info(ct, &newrange, HOOK2MANIP(xt_hooknum(par)));
net/netfilter/xt_NETMAP.c
71
struct nf_conn *ct;
net/netfilter/xt_NETMAP.c
81
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_cluster.c
109
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_cluster.c
110
if (ct == NULL)
net/netfilter/xt_cluster.c
113
if (ct->master)
net/netfilter/xt_cluster.c
114
hash = xt_cluster_hash(ct->master, info);
net/netfilter/xt_cluster.c
116
hash = xt_cluster_hash(ct, info);
net/netfilter/xt_cluster.c
16
static inline u32 nf_ct_orig_ipv4_src(const struct nf_conn *ct)
net/netfilter/xt_cluster.c
18
return (__force u32)ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3.ip;
net/netfilter/xt_cluster.c
21
static inline const u32 *nf_ct_orig_ipv6_src(const struct nf_conn *ct)
net/netfilter/xt_cluster.c
23
return (__force u32 *)ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3.ip6;
net/netfilter/xt_cluster.c
39
xt_cluster_hash(const struct nf_conn *ct,
net/netfilter/xt_cluster.c
44
switch(nf_ct_l3num(ct)) {
net/netfilter/xt_cluster.c
46
hash = xt_cluster_hash_ipv4(nf_ct_orig_ipv4_src(ct), info);
net/netfilter/xt_cluster.c
49
hash = xt_cluster_hash_ipv6(nf_ct_orig_ipv6_src(ct), info);
net/netfilter/xt_cluster.c
83
const struct nf_conn *ct;
net/netfilter/xt_connbytes.c
24
const struct nf_conn *ct;
net/netfilter/xt_connbytes.c
32
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_connbytes.c
33
if (!ct)
net/netfilter/xt_connbytes.c
36
acct = nf_conn_acct_find(ct);
net/netfilter/xt_connlabel.c
25
struct nf_conn *ct;
net/netfilter/xt_connlabel.c
28
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_connlabel.c
29
if (ct == NULL)
net/netfilter/xt_connlabel.c
32
labels = nf_ct_labels_find(ct);
net/netfilter/xt_connlabel.c
41
nf_conntrack_event_cache(IPCT_LABEL, ct);
net/netfilter/xt_connlimit.c
36
const struct nf_conn *ct;
net/netfilter/xt_connlimit.c
40
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_connlimit.c
41
if (ct)
net/netfilter/xt_connlimit.c
42
zone = nf_ct_zone(ct);
net/netfilter/xt_connmark.c
125
const struct nf_conn *ct;
net/netfilter/xt_connmark.c
127
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_connmark.c
128
if (ct == NULL)
net/netfilter/xt_connmark.c
131
return ((READ_ONCE(ct->mark) & info->mask) == info->mark) ^ info->invert;
net/netfilter/xt_connmark.c
31
struct nf_conn *ct;
net/netfilter/xt_connmark.c
35
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_connmark.c
36
if (ct == NULL)
net/netfilter/xt_connmark.c
41
oldmark = READ_ONCE(ct->mark);
net/netfilter/xt_connmark.c
48
if (READ_ONCE(ct->mark) != newmark) {
net/netfilter/xt_connmark.c
49
WRITE_ONCE(ct->mark, newmark);
net/netfilter/xt_connmark.c
50
nf_conntrack_event_cache(IPCT_MARK, ct);
net/netfilter/xt_connmark.c
60
newmark = (READ_ONCE(ct->mark) & ~info->ctmask) ^
net/netfilter/xt_connmark.c
62
if (READ_ONCE(ct->mark) != newmark) {
net/netfilter/xt_connmark.c
63
WRITE_ONCE(ct->mark, newmark);
net/netfilter/xt_connmark.c
64
nf_conntrack_event_cache(IPCT_MARK, ct);
net/netfilter/xt_connmark.c
68
new_targetmark = (READ_ONCE(ct->mark) & info->ctmask);
net/netfilter/xt_conntrack.c
121
const struct nf_conn *ct)
net/netfilter/xt_conntrack.c
125
tuple = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple;
net/netfilter/xt_conntrack.c
127
(nf_ct_protonum(ct) == info->l4proto) ^
net/netfilter/xt_conntrack.c
144
tuple = &ct->tuplehash[IP_CT_DIR_REPLY].tuple;
net/netfilter/xt_conntrack.c
167
const struct nf_conn *ct;
net/netfilter/xt_conntrack.c
170
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_conntrack.c
172
if (ct)
net/netfilter/xt_conntrack.c
180
if (ct != NULL) {
net/netfilter/xt_conntrack.c
181
if (test_bit(IPS_SRC_NAT_BIT, &ct->status))
net/netfilter/xt_conntrack.c
183
if (test_bit(IPS_DST_NAT_BIT, &ct->status))
net/netfilter/xt_conntrack.c
191
if (ct == NULL)
net/netfilter/xt_conntrack.c
199
if (conntrack_mt_origsrc(ct, info, xt_family(par)) ^
net/netfilter/xt_conntrack.c
204
if (conntrack_mt_origdst(ct, info, xt_family(par)) ^
net/netfilter/xt_conntrack.c
209
if (conntrack_mt_replsrc(ct, info, xt_family(par)) ^
net/netfilter/xt_conntrack.c
214
if (conntrack_mt_repldst(ct, info, xt_family(par)) ^
net/netfilter/xt_conntrack.c
219
if (!ct_proto_port_check(info, ct))
net/netfilter/xt_conntrack.c
222
if (!ct_proto_port_check_v3(par->matchinfo, ct))
net/netfilter/xt_conntrack.c
227
(!!(status_mask & ct->status) ^
net/netfilter/xt_conntrack.c
232
unsigned long expires = nf_ct_expires(ct) / HZ;
net/netfilter/xt_conntrack.c
40
conntrack_mt_origsrc(const struct nf_conn *ct,
net/netfilter/xt_conntrack.c
44
return conntrack_addrcmp(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3,
net/netfilter/xt_conntrack.c
49
conntrack_mt_origdst(const struct nf_conn *ct,
net/netfilter/xt_conntrack.c
53
return conntrack_addrcmp(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.dst.u3,
net/netfilter/xt_conntrack.c
58
conntrack_mt_replsrc(const struct nf_conn *ct,
net/netfilter/xt_conntrack.c
62
return conntrack_addrcmp(&ct->tuplehash[IP_CT_DIR_REPLY].tuple.src.u3,
net/netfilter/xt_conntrack.c
67
conntrack_mt_repldst(const struct nf_conn *ct,
net/netfilter/xt_conntrack.c
71
return conntrack_addrcmp(&ct->tuplehash[IP_CT_DIR_REPLY].tuple.dst.u3,
net/netfilter/xt_conntrack.c
77
const struct nf_conn *ct)
net/netfilter/xt_conntrack.c
81
tuple = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple;
net/netfilter/xt_conntrack.c
83
(nf_ct_protonum(ct) == info->l4proto) ^
net/netfilter/xt_conntrack.c
98
tuple = &ct->tuplehash[IP_CT_DIR_REPLY].tuple;
net/netfilter/xt_helper.c
27
const struct nf_conn *ct;
net/netfilter/xt_helper.c
33
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_helper.c
34
if (!ct || !ct->master)
net/netfilter/xt_helper.c
37
master_help = nfct_help(ct->master);
net/netfilter/xt_ipvs.c
118
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_ipvs.c
120
if (ct == NULL) {
net/netfilter/xt_nat.c
100
return nf_nat_setup_info(ct, &range, NF_NAT_MANIP_SRC);
net/netfilter/xt_nat.c
109
struct nf_conn *ct;
net/netfilter/xt_nat.c
111
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_nat.c
112
WARN_ON(!(ct != NULL &&
net/netfilter/xt_nat.c
118
return nf_nat_setup_info(ct, &range, NF_NAT_MANIP_DST);
net/netfilter/xt_nat.c
126
struct nf_conn *ct;
net/netfilter/xt_nat.c
128
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_nat.c
129
WARN_ON(!(ct != NULL &&
net/netfilter/xt_nat.c
133
return nf_nat_setup_info(ct, range, NF_NAT_MANIP_SRC);
net/netfilter/xt_nat.c
141
struct nf_conn *ct;
net/netfilter/xt_nat.c
143
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_nat.c
144
WARN_ON(!(ct != NULL &&
net/netfilter/xt_nat.c
147
return nf_nat_setup_info(ct, range, NF_NAT_MANIP_DST);
net/netfilter/xt_nat.c
57
struct nf_conn *ct;
net/netfilter/xt_nat.c
59
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_nat.c
60
WARN_ON(!(ct != NULL &&
net/netfilter/xt_nat.c
65
return nf_nat_setup_info(ct, &range, NF_NAT_MANIP_SRC);
net/netfilter/xt_nat.c
74
struct nf_conn *ct;
net/netfilter/xt_nat.c
76
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_nat.c
77
WARN_ON(!(ct != NULL &&
net/netfilter/xt_nat.c
81
return nf_nat_setup_info(ct, &range, NF_NAT_MANIP_DST);
net/netfilter/xt_nat.c
90
struct nf_conn *ct;
net/netfilter/xt_nat.c
92
ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_nat.c
93
WARN_ON(!(ct != NULL &&
net/netfilter/xt_state.c
26
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
net/netfilter/xt_state.c
28
if (ct)
net/netfilter/xt_u32.c
102
const struct xt_u32_test *ct;
net/netfilter/xt_u32.c
109
ct = &data->tests[i];
net/netfilter/xt_u32.c
111
if (ct->nnums > ARRAY_SIZE(ct->location) ||
net/netfilter/xt_u32.c
112
ct->nvalues > ARRAY_SIZE(ct->value))
net/netfilter/xt_u32.c
20
const struct xt_u32_test *ct;
net/netfilter/xt_u32.c
35
ct = &data->tests[testind];
net/netfilter/xt_u32.c
37
pos = ct->location[0].number;
net/netfilter/xt_u32.c
45
nnums = ct->nnums;
net/netfilter/xt_u32.c
49
u_int32_t number = ct->location[i].number;
net/netfilter/xt_u32.c
50
switch (ct->location[i].nextop) {
net/netfilter/xt_u32.c
78
nvals = ct->nvalues;
net/netfilter/xt_u32.c
80
if (ct->value[i].min <= val && val <= ct->value[i].max)
net/netfilter/xt_u32.c
83
if (i >= ct->nvalues)
net/openvswitch/conntrack.c
1006
err = ovs_ct_set_mark(ct, key, info->mark.value,
net/openvswitch/conntrack.c
1011
if (!nf_ct_is_confirmed(ct)) {
net/openvswitch/conntrack.c
1012
err = ovs_ct_init_labels(ct, key, &info->labels.value,
net/openvswitch/conntrack.c
1017
nf_conn_act_ct_ext_add(skb, ct, ctinfo);
net/openvswitch/conntrack.c
1020
err = ovs_ct_set_labels(ct, key, &info->labels.value,
net/openvswitch/conntrack.c
1078
struct nf_conn *ct;
net/openvswitch/conntrack.c
1080
ct = nf_ct_get(skb, &ctinfo);
net/openvswitch/conntrack.c
1082
nf_ct_put(ct);
net/openvswitch/conntrack.c
1406
ct_info.ct = nf_ct_tmpl_alloc(net, &ct_info.zone, GFP_KERNEL);
net/openvswitch/conntrack.c
1407
if (!ct_info.ct) {
net/openvswitch/conntrack.c
1413
if (nf_ct_set_timeout(net, ct_info.ct, family, key->ip.proto,
net/openvswitch/conntrack.c
1420
nf_ct_timeout_find(ct_info.ct)->timeout);
net/openvswitch/conntrack.c
1425
err = nf_ct_add_helper(ct_info.ct, helper, ct_info.family,
net/openvswitch/conntrack.c
1439
__set_bit(IPS_CONFIRMED_BIT, &ct_info.ct->status);
net/openvswitch/conntrack.c
154
static u32 ovs_ct_get_mark(const struct nf_conn *ct)
net/openvswitch/conntrack.c
157
return ct ? READ_ONCE(ct->mark) : 0;
net/openvswitch/conntrack.c
1577
if (ct_info->ct) {
net/openvswitch/conntrack.c
1579
nf_ct_destroy_timeout(ct_info->ct);
net/openvswitch/conntrack.c
1580
nf_ct_tmpl_free(ct_info->ct);
net/openvswitch/conntrack.c
168
static void ovs_ct_get_labels(const struct nf_conn *ct,
net/openvswitch/conntrack.c
173
if (ct) {
net/openvswitch/conntrack.c
174
if (ct->master && !nf_ct_is_confirmed(ct))
net/openvswitch/conntrack.c
175
ct = ct->master;
net/openvswitch/conntrack.c
176
cl = nf_ct_labels_find(ct);
net/openvswitch/conntrack.c
190
key->ct.orig_tp.src = htons(orig->dst.u.icmp.type);
net/openvswitch/conntrack.c
191
key->ct.orig_tp.dst = htons(orig->dst.u.icmp.code);
net/openvswitch/conntrack.c
193
key->ct.orig_tp.src = orig->src.u.all;
net/openvswitch/conntrack.c
194
key->ct.orig_tp.dst = orig->dst.u.all;
net/openvswitch/conntrack.c
200
const struct nf_conn *ct)
net/openvswitch/conntrack.c
204
key->ct.mark = ovs_ct_get_mark(ct);
net/openvswitch/conntrack.c
205
ovs_ct_get_labels(ct, &key->ct.labels);
net/openvswitch/conntrack.c
207
if (ct) {
net/openvswitch/conntrack.c
211
if (ct->master)
net/openvswitch/conntrack.c
212
ct = ct->master;
net/openvswitch/conntrack.c
213
orig = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple;
net/openvswitch/conntrack.c
217
nf_ct_l3num(ct) == NFPROTO_IPV4) {
net/openvswitch/conntrack.c
224
nf_ct_l3num(ct) == NFPROTO_IPV6) {
net/openvswitch/conntrack.c
249
struct nf_conn *ct;
net/openvswitch/conntrack.c
252
ct = nf_ct_get(skb, &ctinfo);
net/openvswitch/conntrack.c
253
if (ct) {
net/openvswitch/conntrack.c
256
if (!nf_ct_is_confirmed(ct))
net/openvswitch/conntrack.c
261
if (ct->master)
net/openvswitch/conntrack.c
266
if (ct->status & IPS_SRC_NAT)
net/openvswitch/conntrack.c
268
if (ct->status & IPS_DST_NAT)
net/openvswitch/conntrack.c
271
zone = nf_ct_zone(ct);
net/openvswitch/conntrack.c
277
__ovs_ct_update_key(key, state, zone, ct);
net/openvswitch/conntrack.c
301
nla_put_u32(skb, OVS_KEY_ATTR_CT_MARK, output->ct.mark))
net/openvswitch/conntrack.c
305
nla_put(skb, OVS_KEY_ATTR_CT_LABELS, sizeof(output->ct.labels),
net/openvswitch/conntrack.c
306
&output->ct.labels))
net/openvswitch/conntrack.c
316
orig.src_port = output->ct.orig_tp.src;
net/openvswitch/conntrack.c
317
orig.dst_port = output->ct.orig_tp.dst;
net/openvswitch/conntrack.c
331
orig.src_port = output->ct.orig_tp.src;
net/openvswitch/conntrack.c
332
orig.dst_port = output->ct.orig_tp.dst;
net/openvswitch/conntrack.c
344
static int ovs_ct_set_mark(struct nf_conn *ct, struct sw_flow_key *key,
net/openvswitch/conntrack.c
350
new_mark = ct_mark | (READ_ONCE(ct->mark) & ~(mask));
net/openvswitch/conntrack.c
351
if (READ_ONCE(ct->mark) != new_mark) {
net/openvswitch/conntrack.c
352
WRITE_ONCE(ct->mark, new_mark);
net/openvswitch/conntrack.c
353
if (nf_ct_is_confirmed(ct))
net/openvswitch/conntrack.c
354
nf_conntrack_event_cache(IPCT_MARK, ct);
net/openvswitch/conntrack.c
355
key->ct.mark = new_mark;
net/openvswitch/conntrack.c
364
static struct nf_conn_labels *ovs_ct_get_conn_labels(struct nf_conn *ct)
net/openvswitch/conntrack.c
368
cl = nf_ct_labels_find(ct);
net/openvswitch/conntrack.c
370
nf_ct_labels_ext_add(ct);
net/openvswitch/conntrack.c
371
cl = nf_ct_labels_find(ct);
net/openvswitch/conntrack.c
381
static int ovs_ct_init_labels(struct nf_conn *ct, struct sw_flow_key *key,
net/openvswitch/conntrack.c
389
master_cl = ct->master ? nf_ct_labels_find(ct->master) : NULL;
net/openvswitch/conntrack.c
394
cl = ovs_ct_get_conn_labels(ct);
net/openvswitch/conntrack.c
415
nf_conntrack_event_cache(IPCT_LABEL, ct);
net/openvswitch/conntrack.c
417
memcpy(&key->ct.labels, cl->bits, OVS_CT_LABELS_LEN);
net/openvswitch/conntrack.c
422
static int ovs_ct_set_labels(struct nf_conn *ct, struct sw_flow_key *key,
net/openvswitch/conntrack.c
429
cl = ovs_ct_get_conn_labels(ct);
net/openvswitch/conntrack.c
433
err = nf_connlabels_replace(ct, labels->ct_labels_32,
net/openvswitch/conntrack.c
439
memcpy(&key->ct.labels, cl->bits, OVS_CT_LABELS_LEN);
net/openvswitch/conntrack.c
468
const struct nf_conn *ct = nf_ct_tuplehash_to_ctrack(h);
net/openvswitch/conntrack.c
473
if (test_bit(IPS_SEEN_REPLY_BIT, &ct->status))
net/openvswitch/conntrack.c
475
if (test_bit(IPS_EXPECTED_BIT, &ct->status))
net/openvswitch/conntrack.c
495
struct nf_conn *ct;
net/openvswitch/conntrack.c
519
ct = nf_ct_tuplehash_to_ctrack(h);
net/openvswitch/conntrack.c
526
h = &ct->tuplehash[!h->tuple.dst.dir];
net/openvswitch/conntrack.c
528
nf_ct_set(skb, ct, ovs_ct_get_info(h));
net/openvswitch/conntrack.c
529
return ct;
net/openvswitch/conntrack.c
539
struct nf_conn *ct = NULL;
net/openvswitch/conntrack.c
552
ct = ovs_ct_find_existing(net, &info->zone, info->family, skb,
net/openvswitch/conntrack.c
557
return ct;
net/openvswitch/conntrack.c
567
struct nf_conn *ct;
net/openvswitch/conntrack.c
570
ct = nf_ct_get(skb, &ctinfo);
net/openvswitch/conntrack.c
571
if (!ct)
net/openvswitch/conntrack.c
572
ct = ovs_ct_executed(net, key, info, skb, &ct_executed);
net/openvswitch/conntrack.c
574
if (ct)
net/openvswitch/conntrack.c
579
if (!net_eq(net, read_pnet(&ct->ct_net)))
net/openvswitch/conntrack.c
581
if (!nf_ct_zone_equal_any(info->ct, nf_ct_zone(ct)))
net/openvswitch/conntrack.c
586
help = nf_ct_ext_find(ct, NF_CT_EXT_HELPER);
net/openvswitch/conntrack.c
593
timeout_ext = nf_ct_timeout_find(ct);
net/openvswitch/conntrack.c
603
if (nf_ct_is_confirmed(ct))
net/openvswitch/conntrack.c
604
nf_ct_delete(ct, 0, 0);
net/openvswitch/conntrack.c
606
nf_ct_put(ct);
net/openvswitch/conntrack.c
64
struct nf_conn *ct;
net/openvswitch/conntrack.c
669
struct sk_buff *skb, struct nf_conn *ct,
net/openvswitch/conntrack.c
681
err = nf_ct_nat(skb, ct, ctinfo, &action, &info->range, info->commit);
net/openvswitch/conntrack.c
695
struct sk_buff *skb, struct nf_conn *ct,
net/openvswitch/conntrack.c
735
struct nf_conn *ct;
net/openvswitch/conntrack.c
743
struct nf_conn *tmpl = info->ct;
net/openvswitch/conntrack.c
748
ct = nf_ct_get(skb, &ctinfo);
net/openvswitch/conntrack.c
749
nf_ct_put(ct);
net/openvswitch/conntrack.c
768
ct = nf_ct_get(skb, &ctinfo);
net/openvswitch/conntrack.c
769
if (ct) {
net/openvswitch/conntrack.c
783
(nf_ct_is_confirmed(ct) || info->commit)) {
net/openvswitch/conntrack.c
784
int err = ovs_ct_nat(net, key, info, skb, ct, ctinfo);
net/openvswitch/conntrack.c
797
if (!nf_ct_is_confirmed(ct) && info->commit &&
net/openvswitch/conntrack.c
798
info->helper && !nfct_help(ct)) {
net/openvswitch/conntrack.c
799
int err = __nf_ct_try_assign_helper(ct, info->ct,
net/openvswitch/conntrack.c
806
if (info->nat && !nfct_seqadj(ct)) {
net/openvswitch/conntrack.c
807
if (!nfct_seqadj_ext_add(ct))
net/openvswitch/conntrack.c
818
if ((nf_ct_is_confirmed(ct) ? !cached || add_helper :
net/openvswitch/conntrack.c
820
int err = nf_ct_helper(skb, ct, ctinfo, info->family);
net/openvswitch/conntrack.c
827
if (nf_ct_protonum(ct) == IPPROTO_TCP &&
net/openvswitch/conntrack.c
828
nf_ct_is_confirmed(ct) && nf_conntrack_tcp_established(ct)) {
net/openvswitch/conntrack.c
832
nf_ct_set_tcp_be_liberal(ct);
net/openvswitch/conntrack.c
835
nf_conn_act_ct_ext_fill(skb, ct, ctinfo);
net/openvswitch/conntrack.c
846
struct nf_conn *ct;
net/openvswitch/conntrack.c
853
ct = (struct nf_conn *)skb_nfct(skb);
net/openvswitch/conntrack.c
854
if (ct)
net/openvswitch/conntrack.c
855
nf_ct_deliver_cached_events(ct);
net/openvswitch/conntrack.c
961
struct nf_conn *ct;
net/openvswitch/conntrack.c
969
ct = nf_ct_get(skb, &ctinfo);
net/openvswitch/conntrack.c
970
if (!ct)
net/openvswitch/conntrack.c
975
if (!nf_ct_is_confirmed(ct)) {
net/openvswitch/conntrack.c
995
struct nf_conntrack_ecache *cache = nf_ct_ecache_find(ct);
net/openvswitch/conntrack.h
83
key->ct.mark = 0;
net/openvswitch/conntrack.h
84
memset(&key->ct.labels, 0, sizeof(key->ct.labels));
net/openvswitch/flow.h
165
} ct;
net/openvswitch/flow_netlink.c
1250
SW_FLOW_KEY_PUT(match, ct.mark, mark, is_mask);
net/openvswitch/flow_netlink.c
1258
SW_FLOW_KEY_MEMCPY(match, ct.labels, cl->ct_labels,
net/openvswitch/flow_netlink.c
1263
const struct ovs_key_ct_tuple_ipv4 *ct;
net/openvswitch/flow_netlink.c
1265
ct = nla_data(a[OVS_KEY_ATTR_CT_ORIG_TUPLE_IPV4]);
net/openvswitch/flow_netlink.c
1267
SW_FLOW_KEY_PUT(match, ipv4.ct_orig.src, ct->ipv4_src, is_mask);
net/openvswitch/flow_netlink.c
1268
SW_FLOW_KEY_PUT(match, ipv4.ct_orig.dst, ct->ipv4_dst, is_mask);
net/openvswitch/flow_netlink.c
1269
SW_FLOW_KEY_PUT(match, ct.orig_tp.src, ct->src_port, is_mask);
net/openvswitch/flow_netlink.c
1270
SW_FLOW_KEY_PUT(match, ct.orig_tp.dst, ct->dst_port, is_mask);
net/openvswitch/flow_netlink.c
1271
SW_FLOW_KEY_PUT(match, ct_orig_proto, ct->ipv4_proto, is_mask);
net/openvswitch/flow_netlink.c
1275
const struct ovs_key_ct_tuple_ipv6 *ct;
net/openvswitch/flow_netlink.c
1277
ct = nla_data(a[OVS_KEY_ATTR_CT_ORIG_TUPLE_IPV6]);
net/openvswitch/flow_netlink.c
1279
SW_FLOW_KEY_MEMCPY(match, ipv6.ct_orig.src, &ct->ipv6_src,
net/openvswitch/flow_netlink.c
1282
SW_FLOW_KEY_MEMCPY(match, ipv6.ct_orig.dst, &ct->ipv6_dst,
net/openvswitch/flow_netlink.c
1285
SW_FLOW_KEY_PUT(match, ct.orig_tp.src, ct->src_port, is_mask);
net/openvswitch/flow_netlink.c
1286
SW_FLOW_KEY_PUT(match, ct.orig_tp.dst, ct->dst_port, is_mask);
net/openvswitch/flow_netlink.c
1287
SW_FLOW_KEY_PUT(match, ct_orig_proto, ct->ipv6_proto, is_mask);
net/openvswitch/flow_netlink.c
1939
memset(&key->ct, 0, sizeof(key->ct));
net/sched/act_ct.c
1046
ct = nf_ct_get(skb, &ctinfo);
net/sched/act_ct.c
1047
if (!ct)
net/sched/act_ct.c
1049
nf_ct_deliver_cached_events(ct);
net/sched/act_ct.c
1050
nf_conn_act_ct_ext_fill(skb, ct, ctinfo);
net/sched/act_ct.c
1052
err = tcf_ct_act_nat(skb, ct, ctinfo, p->ct_action, &p->range, commit);
net/sched/act_ct.c
1056
if (!nf_ct_is_confirmed(ct) && commit && p->helper && !nfct_help(ct)) {
net/sched/act_ct.c
1057
err = __nf_ct_try_assign_helper(ct, p->tmpl, GFP_ATOMIC);
net/sched/act_ct.c
1061
if (p->ct_action & TCA_CT_ACT_NAT && !nfct_seqadj(ct)) {
net/sched/act_ct.c
1062
if (!nfct_seqadj_ext_add(ct))
net/sched/act_ct.c
1067
if (nf_ct_is_confirmed(ct) ? ((!cached && !skip_add) || add_helper) : commit) {
net/sched/act_ct.c
1068
err = nf_ct_helper(skb, ct, ctinfo, family);
net/sched/act_ct.c
1074
tcf_ct_act_set_mark(ct, p->mark, p->mark_mask);
net/sched/act_ct.c
1075
tcf_ct_act_set_labels(ct, p->labels, p->labels_mask);
net/sched/act_ct.c
1077
if (!nf_ct_is_confirmed(ct))
net/sched/act_ct.c
1078
nf_conn_act_ct_ext_add(skb, ct, ctinfo);
net/sched/act_ct.c
1091
ct = nf_ct_get(skb, &ctinfo);
net/sched/act_ct.c
1092
if (!ct)
net/sched/act_ct.c
1097
tcf_ct_flow_table_process_conn(p->ct_ft, ct, ctinfo);
net/sched/act_ct.c
1619
entry->ct.action = tcf_ct_action(act);
net/sched/act_ct.c
1620
entry->ct.zone = tcf_ct_zone(act);
net/sched/act_ct.c
1621
entry->ct.flow_table = tcf_ct_ft(act);
net/sched/act_ct.c
178
static void tcf_ct_flow_table_add_action_meta(struct nf_conn *ct,
net/sched/act_ct.c
190
entry->ct_metadata.mark = READ_ONCE(ct->mark);
net/sched/act_ct.c
193
entry->ct_metadata.cookie = (unsigned long)ct | ctinfo;
net/sched/act_ct.c
197
ct_labels = nf_ct_labels_find(ct);
net/sched/act_ct.c
205
struct nf_conn *ct,
net/sched/act_ct.c
209
const struct nf_conntrack_tuple *tuple = &ct->tuplehash[dir].tuple;
net/sched/act_ct.c
212
if (!(ct->status & IPS_NAT_MASK))
net/sched/act_ct.c
215
nf_ct_invert_tuple(&target, &ct->tuplehash[!dir].tuple);
net/sched/act_ct.c
230
switch (nf_ct_protonum(ct)) {
net/sched/act_ct.c
251
struct nf_conn *ct = flow->ct;
net/sched/act_ct.c
259
ctinfo = test_bit(IPS_SEEN_REPLY_BIT, &ct->status) ?
net/sched/act_ct.c
272
err = tcf_ct_flow_table_add_action_nat(net, ct, dir, action);
net/sched/act_ct.c
276
tcf_ct_flow_table_add_action_meta(ct, dir, ctinfo, action);
net/sched/act_ct.c
290
return test_bit(IPS_SEEN_REPLY_BIT, &flow->ct->status) &&
net/sched/act_ct.c
291
test_bit(IPS_HW_OFFLOAD_BIT, &flow->ct->status) &&
net/sched/act_ct.c
413
act_ct_ext = nf_conn_act_ct_ext_find(entry->ct);
net/sched/act_ct.c
421
struct nf_conn *ct,
net/sched/act_ct.c
428
if (test_and_set_bit(IPS_OFFLOAD_BIT, &ct->status))
net/sched/act_ct.c
431
entry = flow_offload_alloc(ct);
net/sched/act_ct.c
438
ct->proto.tcp.seen[0].flags |= IP_CT_TCP_FLAG_BE_LIBERAL;
net/sched/act_ct.c
439
ct->proto.tcp.seen[1].flags |= IP_CT_TCP_FLAG_BE_LIBERAL;
net/sched/act_ct.c
444
act_ct_ext = nf_conn_act_ct_ext_find(ct);
net/sched/act_ct.c
459
clear_bit(IPS_OFFLOAD_BIT, &ct->status);
net/sched/act_ct.c
463
struct nf_conn *ct,
net/sched/act_ct.c
468
switch (nf_ct_protonum(ct)) {
net/sched/act_ct.c
472
!test_bit(IPS_ASSURED_BIT, &ct->status) ||
net/sched/act_ct.c
473
ct->proto.tcp.state != TCP_CONNTRACK_ESTABLISHED)
net/sched/act_ct.c
479
if (!nf_ct_is_confirmed(ct))
net/sched/act_ct.c
481
if (!test_bit(IPS_ASSURED_BIT, &ct->status))
net/sched/act_ct.c
490
!test_bit(IPS_ASSURED_BIT, &ct->status) ||
net/sched/act_ct.c
491
ct->status & IPS_NAT_MASK)
net/sched/act_ct.c
494
tuple = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple;
net/sched/act_ct.c
505
if (nf_ct_ext_exist(ct, NF_CT_EXT_HELPER) ||
net/sched/act_ct.c
506
ct->status & IPS_SEQ_ADJUST)
net/sched/act_ct.c
509
tcf_ct_flow_table_add(ct_ft, ct, tcp, bidirectional);
net/sched/act_ct.c
665
struct nf_conn *ct;
net/sched/act_ct.c
687
ct = flow->ct;
net/sched/act_ct.c
694
if (test_bit(IPS_ASSURED_BIT, &ct->status))
net/sched/act_ct.c
710
ctinfo = test_bit(IPS_SEEN_REPLY_BIT, &ct->status) ?
net/sched/act_ct.c
715
nf_conn_act_ct_ext_fill(skb, ct, ctinfo);
net/sched/act_ct.c
718
if (!test_bit(IPS_ASSURED_BIT, &ct->status)) {
net/sched/act_ct.c
723
nf_conntrack_get(&ct->ct_general);
net/sched/act_ct.c
724
nf_ct_set(skb, ct, ctinfo);
net/sched/act_ct.c
726
nf_ct_acct_update(ct, dir, skb->len);
net/sched/act_ct.c
752
struct nf_conn *ct;
net/sched/act_ct.c
754
ct = nf_ct_get(skb, &ctinfo);
net/sched/act_ct.c
755
if (!ct)
net/sched/act_ct.c
757
if (!net_eq(net, read_pnet(&ct->ct_net)))
net/sched/act_ct.c
759
if (nf_ct_zone(ct)->id != p->zone)
net/sched/act_ct.c
764
help = nf_ct_ext_find(ct, NF_CT_EXT_HELPER);
net/sched/act_ct.c
772
if (nf_ct_is_confirmed(ct))
net/sched/act_ct.c
773
nf_ct_kill(ct);
net/sched/act_ct.c
781
nf_ct_put(ct);
net/sched/act_ct.c
843
struct nf_conn *ct;
net/sched/act_ct.c
850
ct = nf_ct_get(skb, &ctinfo);
net/sched/act_ct.c
851
if ((ct && !nf_ct_is_template(ct)) || ctinfo == IP_CT_UNTRACKED)
net/sched/act_ct.c
900
static void tcf_ct_act_set_mark(struct nf_conn *ct, u32 mark, u32 mask)
net/sched/act_ct.c
908
new_mark = mark | (READ_ONCE(ct->mark) & ~(mask));
net/sched/act_ct.c
909
if (READ_ONCE(ct->mark) != new_mark) {
net/sched/act_ct.c
910
WRITE_ONCE(ct->mark, new_mark);
net/sched/act_ct.c
911
if (nf_ct_is_confirmed(ct))
net/sched/act_ct.c
912
nf_conntrack_event_cache(IPCT_MARK, ct);
net/sched/act_ct.c
917
static void tcf_ct_act_set_labels(struct nf_conn *ct,
net/sched/act_ct.c
927
nf_connlabels_replace(ct, labels, labels_m, 4);
net/sched/act_ct.c
932
struct nf_conn *ct,
net/sched/act_ct.c
948
err = nf_ct_nat(skb, ct, ctinfo, &action, range, commit);
net/sched/act_ct.c
977
struct nf_conn *ct;
net/sched/act_ct.c
992
ct = nf_ct_get(skb, &ctinfo);
net/sched/act_ct.c
993
if (ct) {
net/sched/act_ct.c
994
nf_ct_put(ct);
net/sched/act_ctinfo.c
118
ct = nf_ct_get(skb, &ctinfo);
net/sched/act_ctinfo.c
119
if (!ct) { /* look harder, usually ingress */
net/sched/act_ctinfo.c
130
ct = nf_ct_tuplehash_to_ctrack(thash);
net/sched/act_ctinfo.c
134
if (!cp->dscpstatemask || (READ_ONCE(ct->mark) & cp->dscpstatemask))
net/sched/act_ctinfo.c
135
tcf_ctinfo_dscp_set(ct, ca, cp, skb, wlen, proto);
net/sched/act_ctinfo.c
138
tcf_ctinfo_cpmark_set(ct, ca, cp, skb);
net/sched/act_ctinfo.c
141
nf_ct_put(ct);
net/sched/act_ctinfo.c
31
static void tcf_ctinfo_dscp_set(struct nf_conn *ct, struct tcf_ctinfo *ca,
net/sched/act_ctinfo.c
37
newdscp = (((READ_ONCE(ct->mark) & cp->dscpmask) >> cp->dscpmaskshift) << 2) &
net/sched/act_ctinfo.c
72
static void tcf_ctinfo_cpmark_set(struct nf_conn *ct, struct tcf_ctinfo *ca,
net/sched/act_ctinfo.c
77
skb->mark = READ_ONCE(ct->mark) & cp->cpmarkmask;
net/sched/act_ctinfo.c
90
struct nf_conn *ct;
net/sched/cls_flow.c
139
const struct nf_conn *ct = nf_ct_get(skb, &ctinfo); \
net/sched/cls_flow.c
140
if (ct == NULL) \
net/sched/cls_flow.c
142
ct->tuplehash[CTINFO2DIR(ctinfo)].tuple.member; \
net/sched/cls_flower.c
2100
ret = fl_set_key_ct(tb, &key->ct, &mask->ct, extack);
net/sched/cls_flower.c
2217
FLOW_DISSECTOR_KEY_CT, ct);
net/sched/cls_flower.c
3663
if (fl_dump_key_ct(skb, &key->ct, &mask->ct))
net/sched/cls_flower.c
81
struct flow_dissector_key_ct ct;
scripts/dtc/include-prefixes/dt-bindings/usb/pd.h
463
#define VDO_VPD(hw, fw, ver, vbm, curr, vbi, gi, ct) \
scripts/dtc/include-prefixes/dt-bindings/usb/pd.h
466
| ((gi) & 0x3f) << 1 | (ct))
sound/soc/au1x/psc-i2s.c
104
pscdata->cfg = ct;
sound/soc/au1x/psc-i2s.c
55
unsigned long ct;
sound/soc/au1x/psc-i2s.c
60
ct = pscdata->cfg;
sound/soc/au1x/psc-i2s.c
62
ct &= ~(PSC_I2SCFG_XM | PSC_I2SCFG_MLJ); /* left-justified */
sound/soc/au1x/psc-i2s.c
65
ct |= PSC_I2SCFG_XM; /* enable I2S mode */
sound/soc/au1x/psc-i2s.c
70
ct |= PSC_I2SCFG_MLJ; /* LSB (right-) justified */
sound/soc/au1x/psc-i2s.c
76
ct &= ~(PSC_I2SCFG_BI | PSC_I2SCFG_WI); /* IB-IF */
sound/soc/au1x/psc-i2s.c
79
ct |= PSC_I2SCFG_BI | PSC_I2SCFG_WI;
sound/soc/au1x/psc-i2s.c
82
ct |= PSC_I2SCFG_BI;
sound/soc/au1x/psc-i2s.c
85
ct |= PSC_I2SCFG_WI;
sound/soc/au1x/psc-i2s.c
95
ct |= PSC_I2SCFG_MS; /* PSC I2S consumer mode */
sound/soc/au1x/psc-i2s.c
98
ct &= ~PSC_I2SCFG_MS; /* PSC I2S provider mode */
sound/usb/pcm.c
759
struct snd_interval *ct = hw_param_interval(params, SNDRV_PCM_HW_PARAM_CHANNELS);
sound/usb/pcm.c
775
if (fp->channels < ct->min || fp->channels > ct->max) {
sound/usb/pcm.c
776
hwc_debug(" > check: no valid channels %d (%d/%d)\n", fp->channels, ct->min, ct->max);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
102
ct = lookup_fn(ctx, &bpf_tuple, sizeof(bpf_tuple.ipv4), &opts_def,
tools/testing/selftests/bpf/progs/test_bpf_nf.c
106
if (ct)
tools/testing/selftests/bpf/progs/test_bpf_nf.c
107
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
112
ct = lookup_fn(ctx, &bpf_tuple, sizeof(bpf_tuple.ipv4), &opts_def,
tools/testing/selftests/bpf/progs/test_bpf_nf.c
115
if (ct)
tools/testing/selftests/bpf/progs/test_bpf_nf.c
116
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
120
ct = lookup_fn(ctx, &bpf_tuple, sizeof(bpf_tuple.ipv4), &opts_def,
tools/testing/selftests/bpf/progs/test_bpf_nf.c
122
if (ct)
tools/testing/selftests/bpf/progs/test_bpf_nf.c
123
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
128
ct = lookup_fn(ctx, &bpf_tuple, sizeof(bpf_tuple.ipv4), &opts_def,
tools/testing/selftests/bpf/progs/test_bpf_nf.c
131
if (ct)
tools/testing/selftests/bpf/progs/test_bpf_nf.c
132
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
137
ct = lookup_fn(ctx, &bpf_tuple, sizeof(bpf_tuple.ipv4), &opts_def,
tools/testing/selftests/bpf/progs/test_bpf_nf.c
140
if (ct)
tools/testing/selftests/bpf/progs/test_bpf_nf.c
141
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
145
ct = lookup_fn(ctx, &bpf_tuple, sizeof(bpf_tuple.ipv4), &opts_def,
tools/testing/selftests/bpf/progs/test_bpf_nf.c
147
if (ct)
tools/testing/selftests/bpf/progs/test_bpf_nf.c
148
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
152
ct = lookup_fn(ctx, &bpf_tuple, sizeof(bpf_tuple.ipv4) - 1, &opts_def,
tools/testing/selftests/bpf/progs/test_bpf_nf.c
154
if (ct)
tools/testing/selftests/bpf/progs/test_bpf_nf.c
155
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
164
ct = alloc_fn(ctx, &bpf_tuple, sizeof(bpf_tuple.ipv4), &opts_def,
tools/testing/selftests/bpf/progs/test_bpf_nf.c
166
if (ct) {
tools/testing/selftests/bpf/progs/test_bpf_nf.c
173
bpf_ct_set_timeout(ct, 10000);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
174
ct->mark = 77;
tools/testing/selftests/bpf/progs/test_bpf_nf.c
178
bpf_ct_set_nat_info(ct, &saddr, sport, NF_NAT_MANIP_SRC___local);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
181
bpf_ct_set_nat_info(ct, &daddr, dport, NF_NAT_MANIP_DST___local);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
183
ct_ins = bpf_ct_insert_entry(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
223
ct = lookup_fn(ctx, &bpf_tuple, sizeof(bpf_tuple.ipv4), &opts_def,
tools/testing/selftests/bpf/progs/test_bpf_nf.c
225
if (ct) {
tools/testing/selftests/bpf/progs/test_bpf_nf.c
227
if (ct->mark == 42) {
tools/testing/selftests/bpf/progs/test_bpf_nf.c
228
ct->mark++;
tools/testing/selftests/bpf/progs/test_bpf_nf.c
229
test_exist_lookup_mark = ct->mark;
tools/testing/selftests/bpf/progs/test_bpf_nf.c
231
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
246
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf.c
251
ct = lookup_fn(ctx, &bpf_tuple, sizeof(bpf_tuple.ipv4), &opts_def,
tools/testing/selftests/bpf/progs/test_bpf_nf.c
254
if (ct)
tools/testing/selftests/bpf/progs/test_bpf_nf.c
255
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
267
ct = alloc_fn(ctx, &bpf_tuple, sizeof(bpf_tuple.ipv4), &opts_def,
tools/testing/selftests/bpf/progs/test_bpf_nf.c
269
if (ct) {
tools/testing/selftests/bpf/progs/test_bpf_nf.c
276
bpf_ct_set_timeout(ct, 10000);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
280
bpf_ct_set_nat_info(ct, &saddr, sport, NF_NAT_MANIP_SRC___local);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
283
bpf_ct_set_nat_info(ct, &daddr, dport, NF_NAT_MANIP_DST___local);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
285
ct_ins = bpf_ct_insert_entry(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf.c
97
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
100
if (!ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
102
ct = bpf_ct_insert_entry(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
103
if (!ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
105
bpf_ct_set_timeout(ct, 0);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
114
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
116
ct = bpf_skb_ct_alloc(ctx, &tup, sizeof(tup.ipv4), &opts, sizeof(opts));
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
117
if (!ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
119
ct = bpf_ct_insert_entry(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
120
if (!ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
122
bpf_ct_set_status(ct, 0);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
131
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
133
ct = bpf_skb_ct_alloc(ctx, &tup, sizeof(tup.ipv4), &opts, sizeof(opts));
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
134
if (!ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
136
bpf_ct_change_timeout(ct, 0);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
145
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
147
ct = bpf_skb_ct_alloc(ctx, &tup, sizeof(tup.ipv4), &opts, sizeof(opts));
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
148
if (!ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
150
bpf_ct_change_status(ct, 0);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
159
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
161
ct = bpf_skb_ct_lookup(ctx, NULL, 0, &opts, sizeof(opts));
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
162
if (ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
163
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
172
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
174
ct = bpf_skb_ct_lookup(ctx, &tup, sizeof(tup.ipv4), NULL, sizeof(struct bpf_ct_opts___local));
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
175
if (ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
176
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
185
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
187
ct = bpf_xdp_ct_lookup(ctx, NULL, 0, &opts, sizeof(opts));
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
188
if (ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
189
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
198
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
200
ct = bpf_xdp_ct_lookup(ctx, &tup, sizeof(tup.ipv4), NULL, sizeof(struct bpf_ct_opts___local));
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
201
if (ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
202
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
38
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
40
ct = bpf_skb_ct_alloc(ctx, &tup, sizeof(tup.ipv4), &opts, sizeof(opts));
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
41
if (!ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
43
bpf_ct_release(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
52
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
54
ct = bpf_skb_ct_alloc(ctx, &tup, sizeof(tup.ipv4), &opts, sizeof(opts));
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
55
if (!ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
57
ct = bpf_ct_insert_entry(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
58
if (!ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
60
ct = bpf_ct_insert_entry(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
69
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
71
ct = bpf_skb_ct_lookup(ctx, &tup, sizeof(tup.ipv4), &opts, sizeof(opts));
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
72
if (!ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
74
bpf_ct_insert_entry(ct);
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
83
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
85
ct = bpf_skb_ct_lookup(ctx, &tup, sizeof(tup.ipv4), &opts, sizeof(opts));
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
86
if (!ct)
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
88
ct->status = 0xF00;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
97
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/test_bpf_nf_fail.c
99
ct = bpf_skb_ct_alloc(ctx, &tup, sizeof(tup.ipv4), &opts, sizeof(opts));
tools/testing/selftests/bpf/progs/xdp_synproxy_kern.c
110
extern void bpf_ct_release(struct nf_conn *ct) __ksym;
tools/testing/selftests/bpf/progs/xdp_synproxy_kern.c
437
struct nf_conn *ct;
tools/testing/selftests/bpf/progs/xdp_synproxy_kern.c
465
ct = bpf_xdp_ct_lookup(ctx, &tup, tup_size, &ct_lookup_opts, sizeof(ct_lookup_opts));
tools/testing/selftests/bpf/progs/xdp_synproxy_kern.c
467
ct = bpf_skb_ct_lookup(ctx, &tup, tup_size, &ct_lookup_opts, sizeof(ct_lookup_opts));
tools/testing/selftests/bpf/progs/xdp_synproxy_kern.c
468
if (ct) {
tools/testing/selftests/bpf/progs/xdp_synproxy_kern.c
469
unsigned long status = ct->status;
tools/testing/selftests/bpf/progs/xdp_synproxy_kern.c
471
bpf_ct_release(ct);
tools/testing/selftests/kvm/lib/string_override.c
10
int memcmp(const void *cs, const void *ct, size_t count)
tools/testing/selftests/kvm/lib/string_override.c
15
for (su1 = cs, su2 = ct; 0 < count; ++su1, ++su2, count--) {
tools/testing/selftests/timens/timens.c
38
ct(CLOCK_BOOTTIME, -1),
tools/testing/selftests/timens/timens.c
39
ct(CLOCK_BOOTTIME_ALARM, 1),
tools/testing/selftests/timens/timens.c
40
ct(CLOCK_MONOTONIC, -1),
tools/testing/selftests/timens/timens.c
41
ct(CLOCK_MONOTONIC_COARSE, 1),
tools/testing/selftests/timens/timens.c
42
ct(CLOCK_MONOTONIC_RAW, 1),