<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/dca/dca-core.c, branch v6.6.132</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v6.6.132</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v6.6.132'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2023-04-08T20:45:36+00:00</updated>
<entry>
<title>dca: delete unnecessary variable</title>
<updated>2023-04-08T20:45:36+00:00</updated>
<author>
<name>Dan Carpenter</name>
<email>error27@gmail.com</email>
</author>
<published>2023-02-27T10:06:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3ac39d208d485ef5f5518b96f23ec9ade077683f'/>
<id>urn:sha1:3ac39d208d485ef5f5518b96f23ec9ade077683f</id>
<content type='text'>
It's more readable to just pass NULL directly instead of using a variable
for that.

Link: https://lkml.kernel.org/r/Y/yAlDytLH0ZNLNz@kili
Signed-off-by: Dan Carpenter &lt;error27@gmail.com&gt;
Cc: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 33</title>
<updated>2019-05-24T15:27:11+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2019-05-20T17:07:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e62d9491030613a29400f68f63f1b67c46cf2559'/>
<id>urn:sha1:e62d9491030613a29400f68f63f1b67c46cf2559</id>
<content type='text'>
Based on 1 normalized pattern(s):

  this program is free software you can redistribute it and or modify
  it under the terms of the gnu general public license as published by
  the free software foundation either version 2 of the license or at
  your option any later version this program is distributed in the
  hope that it will be useful but without any warranty without even
  the implied warranty of merchantability or fitness for a particular
  purpose see the gnu general public license for more details you
  should have received a copy of the gnu general public license along
  with this program if not write to the free software foundation inc
  59 temple place suite 330 boston ma 02111 1307 usa the full gnu
  general public license is included in this distribution in the file
  called copying

extracted by the scancode license scanner the SPDX license identifier

  GPL-2.0-or-later

has been chosen to replace the boilerplate/reference in 7 file(s).

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Reviewed-by: Allison Randal &lt;allison@lohutok.net&gt;
Reviewed-by: Richard Fontana &lt;rfontana@redhat.com&gt;
Reviewed-by: Kate Stewart &lt;kstewart@linuxfoundation.org&gt;
Reviewed-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt; (powerpc)
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190520170857.277062491@linutronix.de
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>dca: make function dca_common_get_tag static</title>
<updated>2018-04-24T01:02:41+00:00</updated>
<author>
<name>Colin Ian King</name>
<email>colin.king@canonical.com</email>
</author>
<published>2018-04-23T12:49:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=064223c1231ce508efaded6576ffdb07de9307b5'/>
<id>urn:sha1:064223c1231ce508efaded6576ffdb07de9307b5</id>
<content type='text'>
Function dca_common_get_tag is local to the source and does not need to be
in global scope, so make it static.

Cleans up sparse warning:
drivers/dca/dca-core.c:273:4: warning: symbol 'dca_common_get_tag' was
not declared. Should it be static?

Signed-off-by: Colin Ian King &lt;colin.king@canonical.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>dmaengine: ioatdma: constify dca_ops structures</title>
<updated>2015-11-16T03:57:32+00:00</updated>
<author>
<name>Julia Lawall</name>
<email>julia.lawall@lip6.fr</email>
</author>
<published>2015-11-13T11:46:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=2bb129ebb23d2dfec3cd9c22dc7defd681cfcd58'/>
<id>urn:sha1:2bb129ebb23d2dfec3cd9c22dc7defd681cfcd58</id>
<content type='text'>
The dca_ops structure is never modified, so declare it as const.

Done with the help of Coccinelle.

Signed-off-by: Julia Lawall &lt;Julia.Lawall@lip6.fr&gt;
Acked-by: Dan Williams &lt;dan.j.williams@intel.com&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
</content>
</entry>
<entry>
<title>dca: check against empty dca_domains list before unregister provider</title>
<updated>2013-01-08T06:05:14+00:00</updated>
<author>
<name>Maciej Sosnowski</name>
<email>maciej.sosnowski@intel.com</email>
</author>
<published>2012-05-23T15:27:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c419fcfd071cf34ba00f9f65282583772d2655e7'/>
<id>urn:sha1:c419fcfd071cf34ba00f9f65282583772d2655e7</id>
<content type='text'>
When providers get blocked unregister_dca_providers() is called ending up
with dca_providers and dca_domain lists emptied. Dca should be prevented from
trying to unregister any provider if dca_domain list is found empty.

Cc: &lt;stable@vger.kernel.org&gt;
Reported-by: Jiang Liu &lt;jiang.liu@huawei.com&gt;
Tested-by: Gaohuai Han &lt;hangaohuai@huawei.com&gt;
Signed-off-by: Maciej Sosnowski &lt;maciej.sosnowski@intel.com&gt;
Signed-off-by: Dan Williams &lt;djbw@fb.com&gt;
</content>
</entry>
<entry>
<title>drivers/dca: Add module.h to dca-core.c</title>
<updated>2011-10-31T23:31:43+00:00</updated>
<author>
<name>Paul Gortmaker</name>
<email>paul.gortmaker@windriver.com</email>
</author>
<published>2011-07-03T17:37:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=d229807f669ba3dea9f64467ee965051c4366aed'/>
<id>urn:sha1:d229807f669ba3dea9f64467ee965051c4366aed</id>
<content type='text'>
This file really needs the full module.h header file present, but
was just getting it implicitly before.  Call it out in advance so
that we don't get future build failures on this.

Signed-off-by: Paul Gortmaker &lt;paul.gortmaker@windriver.com&gt;
</content>
</entry>
<entry>
<title>locking, drivers/dca: Annotate dca_lock as raw</title>
<updated>2011-09-13T09:12:12+00:00</updated>
<author>
<name>Mike Galbraith</name>
<email>efault@gmx.de</email>
</author>
<published>2010-07-07T08:29:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a1741e7fcbc19a67520115df480ab17012cc3d0b'/>
<id>urn:sha1:a1741e7fcbc19a67520115df480ab17012cc3d0b</id>
<content type='text'>
The dca_lock can be taken in atomic context:

[   25.607536] Call Trace:
[   25.607557]  [&lt;ffffffff820078a1&gt;] try_stack_unwind+0x151/0x1a0
[   25.607566]  [&lt;ffffffff820062c2&gt;] dump_trace+0x92/0x370
[   25.607573]  [&lt;ffffffff8200731c&gt;] show_trace_log_lvl+0x5c/0x80
[   25.607578]  [&lt;ffffffff82007355&gt;] show_trace+0x15/0x20
[   25.607587]  [&lt;ffffffff823f4588&gt;] dump_stack+0x77/0x8f
[   25.607595]  [&lt;ffffffff82043f2a&gt;] __might_sleep+0x11a/0x130
[   25.607602]  [&lt;ffffffff823f7b93&gt;] rt_spin_lock+0x83/0x90
[   25.607611]  [&lt;ffffffffa0209138&gt;] dca_common_get_tag+0x28/0x80 [dca]
[   25.607622]  [&lt;ffffffffa02091c8&gt;] dca3_get_tag+0x18/0x20 [dca]
[   25.607634]  [&lt;ffffffffa0244e71&gt;] igb_update_dca+0xb1/0x1d0 [igb]
[   25.607649]  [&lt;ffffffffa0244ff5&gt;] igb_setup_dca+0x65/0x80 [igb]
[   25.607663]  [&lt;ffffffffa02535a6&gt;] igb_probe+0x946/0xe4d [igb]
[   25.607678]  [&lt;ffffffff82247517&gt;] local_pci_probe+0x17/0x20
[   25.607686]  [&lt;ffffffff82248661&gt;] pci_device_probe+0x121/0x130
[   25.607699]  [&lt;ffffffff822e4832&gt;] driver_probe_device+0xd2/0x2e0
[   25.607707]  [&lt;ffffffff822e4adb&gt;] __driver_attach+0x9b/0xa0
[   25.607714]  [&lt;ffffffff822e3d1b&gt;] bus_for_each_dev+0x6b/0xa0
[   25.607720]  [&lt;ffffffff822e4591&gt;] driver_attach+0x21/0x30
[   25.607727]  [&lt;ffffffff822e3425&gt;] bus_add_driver+0x1e5/0x350
[   25.607734]  [&lt;ffffffff822e4e41&gt;] driver_register+0x81/0x160
[   25.607742]  [&lt;ffffffff8224890f&gt;] __pci_register_driver+0x6f/0xf0
[   25.607752]  [&lt;ffffffffa011505b&gt;] igb_init_module+0x5b/0x5d [igb]
[   25.607769]  [&lt;ffffffff820001dd&gt;] do_one_initcall+0x3d/0x1a0
[   25.607778]  [&lt;ffffffff820961f6&gt;] sys_init_module+0xe6/0x270
[   25.607786]  [&lt;ffffffff82003232&gt;] system_call_fastpath+0x16/0x1b
[   25.607794]  [&lt;00007f84d6783f4a&gt;] 0x7f84d6783f4a

and thus must not be preempted on -rt.

In mainline this change documents the low level nature of
the lock - otherwise there's no functional difference. Lockdep
and Sparse checking will work as usual.

Signed-off-by: Mike Galbraith &lt;efault@gmx.de&gt;
[ Fixed the domain allocation which was calling kzalloc from the irq disabled section ]
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>drivers/dca/dca-core.c: use list_move() instead of list_del()/list_add() combination</title>
<updated>2011-03-23T00:44:12+00:00</updated>
<author>
<name>Kirill A. Shutemov</name>
<email>kirill@shutemov.name</email>
</author>
<published>2011-03-22T23:34:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3bb598fb23b6040e67b5e6db9a00b28cd26e5809'/>
<id>urn:sha1:3bb598fb23b6040e67b5e6db9a00b28cd26e5809</id>
<content type='text'>
Signed-off-by: Kirill A. Shutemov &lt;kirill@shutemov.name&gt;
Cc: Maciej Sosnowski &lt;maciej.sosnowski@intel.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>dca: remove unneeded NULL check</title>
<updated>2011-01-13T16:03:09+00:00</updated>
<author>
<name>Dan Carpenter</name>
<email>error27@gmail.com</email>
</author>
<published>2011-01-13T00:59:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f0f2c2b5b40b5e621a47a6a274117cce77841f1e'/>
<id>urn:sha1:f0f2c2b5b40b5e621a47a6a274117cce77841f1e</id>
<content type='text'>
The return here doesn't release the locks or re-enable IRQs.  But as
Andrew Morton points out, domain is never NULL.  list_first_entry()
essentially never returns NULL and also we already verified that the list
is not empty.

Signed-off-by: Dan Carpenter &lt;error27@gmail.com&gt;
Acked-by: Maciej Sosnowski &lt;maciej.sosnowski@intel.com&gt;
Cc: David Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>dca: disable dca on IOAT ver.3.0 multiple-IOH platforms</title>
<updated>2010-09-18T03:08:21+00:00</updated>
<author>
<name>Sosnowski, Maciej</name>
<email>maciej.sosnowski@intel.com</email>
</author>
<published>2010-09-16T06:02:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=4e8cec269dd9e823804141f25ce37c23e72d3c12'/>
<id>urn:sha1:4e8cec269dd9e823804141f25ce37c23e72d3c12</id>
<content type='text'>
Direct Cache Access is not supported on IOAT ver.3.0 multiple-IOH platforms.
This patch blocks registering of dca providers when multiple IOH detected with IOAT ver.3.0.

Signed-off-by: Maciej Sosnowski &lt;maciej.sosnowski@intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
