Age | Commit message (Collapse) | Author |
|
this was first introduced in r1.176 by jan@. this diff includes two
fixes to that implementation.
the most important one is to parse the ip and tcp headers before a
possible call to m_defrag. if an l4 offload is requested, it's only
requested by the stack when the payload is correctly aligned and
with each header contiguous in memory. this means you can use
m_getptr and cast the packet data to the relevant headers to read
them directly because that's what the stack does when it's working
on them. this makes it cheap to work on them too.
however, if you m_defrag, it ignores the alignment and ends up
making it unsafe to dereference the ip and tcp/udp payloads on
strict alignment architectures. if we want to look at the headers
after m_defrag, we'd likely have to copy them onto the stack first.
the other fix is to reset the offload bits between packets in the
loop in ixl_start.
another difference is that this code skips parsing the packet if
no checksum offload is requested.
tests and a tweak by bluhm@ to actually use the offloading
tested by me on sparc64 and x86 boxes
ok bluhm@ jmatthew@
|
|
this is based on work by jan@ and bluhm@. the most interesting
change on top of their work is to move the parsing of the IP packets
to figure out ip and udp/tcp offsets before a possible call to
m_defrag.
if an l4 offload is requested, it's only requested by the stack
when the payload is correctly aligned and with each header contiguous
in memory. this means you can use m_getptr and cast the packet data
to the relevant headers to read them directly because that's what
the stack does when it's working on them. this makes it cheap to
work on them too.
however, if you m_defrag, it ignores the alignment and ends up
making it unsafe to dereference the ip and tcp/udp payloads on
strict alignment architectures. if we want to look at the headers
after m_defrag, we'd likely have to copy them onto the stack first.
we got away with this before because we were lucky with the code
that's generated on strict alignment archs for looking at the ip
hl and proto fields. that luck might run out though.
while here i've also tweaked the vlan handling code, and generally
tried to make it more readable.
ok bluhm@ jmatthew@
|
|
ok jsg@
|
|
should fix panic on boot on x41 reported by Fred Crowson
|
|
|
|
|
|
|
|
From Bas Nieuwenhuizen
548f20b39ec91fdd97194a84a0d9b2f68715762a in linux 5.15.y/5.15.19
72a8d87b87270bff0c0b2fed4d59c48d0dd840d7 in mainline linux
|
|
From Manasi Navare
73740f948252e424a01465155d8737bceae23653 in linux 5.15.y/5.15.19
5ec1cebd59300ddd26dbaa96c17c508764eef911 in mainline linux
|
|
|
|
|
|
|
|
only caller is ttm_move_memcpy()
inteldrm has equivalent bits in i915_memcpy.c
|
|
|
|
djm@ confirms the recently committed 5.5.18 change
'drm/amdgpu: Use correct VIEWPORT_DIMENSION for DCN2'
to use the right register for GMC9 DCN2 (RENOIR, GREEN_SARDINE) is
enough on t14 gen 2 amd.
|
|
|
|
|
|
functions in this file want to reach into the implementation of
irq work which for us isn't a llist but rather a task
|
|
From Harry Wentland
7b6577cf9fe48d24d82df9362a077396a9d5cb27 in linux 5.15.y/5.15.18
dc5d4aff2e99c312df8abbe1ee9a731d2913bc1b in mainline linux
|
|
From Mario Limonciello
f71c91ed1d4b4bfbbb55327b04dcc32b2d970f62 in linux 5.15.y/5.15.18
83293f7f3d15fc56e86bd5067a2c88b6b233ac3a in mainline linux
|
|
From Tvrtko Ursulin
8a17a077e7e9ecce25c95dbdb27843d2d6c2f0f7 in linux 5.15.y/5.15.18
7938d61591d33394a21bdd7797a245b65428f44c in mainline linux
|
|
apostrophe.
|
|
From Christian Koenig
f22f67b43775fffb09f371ea861779cdbbb763ec in linux 5.15.y/5.15.17
4722f463896cc0ef1a6f1c3cb2e171e949831249 in mainline linux
|
|
From Jose Roberto de Souza
077fe9d865604fcab3238afeaa7408cc1635bc39 in linux 5.15.y/5.15.17
ef3ac01564067a4337bb798b8eddc6ea7b78fd10 in mainline linux
|
|
From Alex Deucher
c3a9e0e701dfd087b0044c3598bffe880262c066 in linux 5.15.y/5.15.17
e8309d50e97851ff135c4e33325d37b032666b94 in mainline linux
|
|
From Yizhuo Zhai
3bf997ec299cdf7280b2039806e5e1d847df111a in linux 5.15.y/5.15.17
0726ed3065eeb910f9cea0c933bc021a848e00b3 in mainline linux
|
|
From Marina Nikolic
e4066c05d3327b530bb00d11d3492bac1e69982d in linux 5.15.y/5.15.17
11c9cc95f818f0f187e9b579a7f136f532b42445 in mainline linux
|
|
From Zongmin Zhou
493b87970061f044c5cf795cfd1d679d114844ed in linux 5.15.y/5.15.17
11544d77e3974924c5a9c8a8320b996a3e9b2f8b in mainline linux
|
|
From Jingwen Chen
305f07b93d34d292432251e9963bf232db38d67a in linux 5.15.y/5.15.17
948e7ce01413b71395723aaf846015062aea3a43 in mainline linux
|
|
From Jingwen Chen
8662d0c6a36807093aed34b17b930484fd4bf22f in linux 5.15.y/5.15.17
85dfc1d692c9434c37842e610be37cd4ae4e0081 in mainline linux
|
|
From Felix Kuehling
4a635b9d5ba5f691e378f7ec20e11b7b04f07a45 in linux 5.15.y/5.15.17
726be40607264b180a2b336c81e1dcff941de618 in mainline linux
|
|
From Martin Leung
58d33532664c1580beeb127ffe771a7739fb63d3 in linux 5.15.y/5.15.17
11dff0e871037a6ad978e52f826a2eb7f5fb274a in mainline linux
|
|
From Alex Deucher
f94cf1cb17963905910c2adc332ebb9e44e7fa4b in linux 5.15.y/5.15.17
92020e81ddbeac351ea4a19bcf01743f32b9c800 in mainline linux
|
|
From Yang Li
1fffa8ffd62fc511d4447b793641252c4743e81c in linux 5.15.y/5.15.17
a689e8d1f80012f90384ebac9dcfac4201f9f77e in mainline linux
|
|
From Hans de Goede
c350fcc74035f48ee5a7226faee7079dd0ce9565 in linux 5.15.y/5.15.17
bc30c3b0c8a1904d83d5f0d60fb8650a334b207b in mainline linux
|
|
From Nicholas Kazlauskas
89166801f80dc64083212eef1308bfc62f6844f1 in linux 5.15.y/5.15.17
d374d3b493215d637b9e7be12a93f22caf4c1f97 in mainline linux
|
|
From Wayne Lin
6dcc6706dab10744d277bdc2613fb135c6a632dd in linux 5.15.y/5.15.17
4bef85d4c9491415b7931407b07f24841c1e0390 in mainline linux
|
|
radeon_driver_open_kms()
From Zhou Qingyang
e833ef0b545e1a5b3eaf00af391c4fd1fb47ffd8 in linux 5.15.y/5.15.17
ab50cb9df8896b39aae65c537a30de2c79c19735 in mainline linux
|
|
From Zhou Qingyang
1e22b51876fa786c0b972e327ffb5cc686873cd1 in linux 5.15.y/5.15.17
b220110e4cd442156f36e1d9b4914bb9e87b0d00 in mainline linux
|
|
From Lyude Paul
56339a5546a7f66333f9d3c55e3fd1424caa4879 in linux 5.15.y/5.15.17
646596485e1ed2182adf293dfd5aec4a96c46330 in mainline linux
|
|
From Wang Hai
52e1bf49e3e25358519719284028334cb31ab543 in linux 5.15.y/5.15.17
acf20ed020ffa4d6cc8347e8d356509b95df3cbe in mainline linux
|
|
From xinhui pan
0da09030aae4a3c9de4699e7ce71085639f8c378 in linux 5.15.y/5.15.17
781050b0a3164934857c300bb0bc291e38c26b6f in mainline linux
|
|
found by kubsan; joint work with tobhe@; OK miod@
|
|
|
|
used with spin_lock_irq() from
resubmit_virtual_request()
execlists_hold()
execlists_unhold()
execlists_capture()
remove_from_engine()
rcu_virtual_context_destroy()
virtual_submission_tasklet()
used with spin_lock_irqsave() from
execlists_submit_request()
execlists_reset_rewind()
execlists_reset_cancel()
virtual_submit_request()
intel_execlists_show_requests()
|
|
used with spin_lock_irqsave() from
__i915_gem_object_set_pages()
i915_gem_suspend_late()
i915_gem_shrink()
i915_gem_shrinker_oom()
i915_gem_object_make_unshrinkable()
i915_gem_madvise_ioctl()
|
|
|
|
|
|
|
|
includes linux 988d4ff6e3c2220d13d8dde22a98945b64fd7977
drm/i915: Fix ww locking in shmem_create_from_object
|