All error conditions from open_ctree shall be ERR. Warning would
suggest that something's wrong and we can continue.
Signed-off-by: David Sterba <dsterba@suse.cz>
Signed-off-by: Chris Mason <clm@fb.com>
Several messages that point to some internal problem, level INFO is
wrong here.
Signed-off-by: David Sterba <dsterba@suse.cz>
Signed-off-by: Chris Mason <clm@fb.com>
We were incorrectly detecting when the target key didn't exist anymore
after releasing the path and re-searching the tree. This could make
us split or duplicate (btrfs_split_item() and btrfs_duplicate_item()
are its only callers at the moment) an item when we should not.
For the case of duplicating an item, we currently only duplicate
checksum items (csum tree) and file extent items (fs/subvol trees).
For the checksum items we end up overriding the item completely,
but for file extent items we update only some of their fields in
the copy (done in __btrfs_drop_extents), which means we can end up
having a logical corruption for some values.
Also for the case where we duplicate a file extent item it will make
us produce a leaf with a wrong key order, as btrfs_duplicate_item()
advances us to the next slot and then its caller sets a smaller key
on the new item at that slot (like in __btrfs_drop_extents() e.g.).
Alternatively if the tree search in setup_leaf_for_split() leaves
with path->slots[0] == btrfs_header_nritems(path->nodes[0]), we end
up accessing beyond the leaf's end (when we check if the item's size
has changed) and make our caller insert an item at the invalid slot
btrfs_header_nritems(path->nodes[0]) + 1, causing an invalid memory
access if the leaf is full or nearly full.
This issue has been present since the introduction of this function
in 2009:
Btrfs: Add btrfs_duplicate_item
commit ad48fd7546
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: Chris Mason <clm@fb.com>
support for CDCE949 clock generator.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
iQIcBAABAgAGBQJUvmoxAAoJEGFBu2jqvgRNKmIP+QFtkW4TgW1Sexvm4j07Xzd/
7moYcD3Nv1xrVUg3hD+oVkR17YeaFb7S1tZ/G64XHV3nXPodwbkF19LnsVRID4Bn
ohiQJMZ8gKd3ISqp+gsMbZribG6YldlITK9Zqv8FxRc41hZwoAnzdOnDZwpQdz4S
PwP6pxu9KPEnKTeofDh602YE+M0DcQ1g9P43Gv/5NIGRJxC+usgseZkhkNIQwpGQ
kh4OcPQDxb+oD/fncVaNj2ipUEAu4/4vUPlxdGKGwnMgZw3e7uuiwB6TOaWEKHk7
Zdcri+h1eaKVEZTAMw682Zbb0afjjEujeKc85wywALm44BdyB/T8UKFHgIRgyDaC
aO1us1rh9bNqNEN5+CQVhWoip7u2CgY3Jj58oTqp2aIckPViuggupe3k2wl+w0va
VQpVkbeR6zztW4YkzufY01iICb5fH0qVareJDXHiNPjxIj5DAVGeQBEKIkmvy0Lv
hDIwX/0Pv2kAJoZ5uqDI7wiwRFNn/C4cF0Y1NFrg5gQn++QBL5/DWXozRGYI869a
0h0pVo6OmoXYRvRTCTq9HA+nUzvSJ8ScHSnsy9KPfYC3GHLPZycAyn36AVu68Dlb
t+h2brpsYA/acavJxyEdUDalU0v/llC9/rSVnnwGOfGzPu6GFSJ7EOsHonX7ydVF
oniAlKgXc2m3tmDBTS90
=mzqp
-----END PGP SIGNATURE-----
Merge tag 'davinci-for-v3.20/cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into next/cleanup
Merge "DaVinci cleanups for v3.20" from Sekhar Nori:
Removes an unused function and the unused
support for CDCE949 clock generator.
* tag 'davinci-for-v3.20/cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci:
ARM: davinci: Remove CDCE949 driver
ARM: davinci: serial.c: remove unused serial_read_reg()
Signed-off-by: Olof Johansson <olof@lixom.net>
Currently any time we try to update the block groups on disk we will walk _all_
block groups and check for the ->dirty flag to see if it is set. This function
can get called several times during a commit. So if you have several terabytes
of data you will be a very sad panda as we will loop through _all_ of the block
groups several times, which makes the commit take a while which slows down the
rest of the file system operations.
This patch introduces a dirty list for the block groups that we get added to
when we dirty the block group for the first time. Then we simply update any
block groups that have been dirtied since the last time we called
btrfs_write_dirty_block_groups. This allows us to clean up how we write the
free space cache out so it is much cleaner. Thanks,
Signed-off-by: Josef Bacik <jbacik@fb.com>
Signed-off-by: Chris Mason <clm@fb.com>
I've been overloading root->dirty_list to keep track of dirty roots and which
roots need to have their commit roots switched at transaction commit time. This
could cause us to lose an update to the root which could corrupt the file
system. To fix this use a state bit to know if the root is dirty, and if it
isn't set we go ahead and move the root to the dirty list. This way if we
re-dirty the root after adding it to the switch_commit list we make sure to
update it. This also makes it so that the extent root is always the last root
on the dirty list to try and keep the amount of churn down at this point in the
commit. Thanks,
Signed-off-by: Josef Bacik <jbacik@fb.com>
Signed-off-by: Chris Mason <clm@fb.com>
The register bit fields are a little different, so add an entry and a
compatible string to accommodate them.
Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Some of the older chips used different bits to arm and trigger the reset.
Add the infrastructure needed to specify this through the "compatible"
string.
Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Now that the driver doesn't use any ARM-specific headers, it is safe
to build on MIPS or with COMPILE_TEST.
Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
* Instantiate GIC from C board code in legacy builds on r8a7778 and r8a7779
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJUvax/AAoJENfPZGlqN0++7d4P/ic/OC82lPZuhmqCzdE03ptb
8wvQNiQdHHA1q1hVZPC4cVGDqIymv9Si5q8AliPT5hqT2iSZIUjlTPe4WO350zSl
qZZoAM4Qk6DzxFNw6I/+j7HcR9NEzCBpfCEkNH7peXzmrlGnAdBPKY0Lw9wf47a/
uh4xwaKsi7583AN2m1NB9jYESUNXyP/lWEsA+goUqIZTudJLpcvML6y96nHJ9JEv
5MXFAwVVDJ+huz6Q8hG3ImviUihiIWX25oQ2pmhFczPIf+RDHWDMhQd5Xp/5VBVn
+3ckUFjXgzhYp5BvPvFhrU46nHolGALDbEIOGgMZwM8GRIA9ffAttK3j4Du1ixa3
XDrNCbfOCeXfRAr+HcTHdwUtKcJxVz9oVZmlOMzc6yZfrAR0Y5dz3M8iUa2tqFqK
+DUGstqm26rSwDVGkY7vElRz5nnQhb0/yWpUrO2Augsh04e28V5SkFiIHRFWJ/uT
53h8qbqyDChw9ZVqg0Na01N0aVRa5a1XpYqtAEs+ta+y3/A35NVBToXhVh3aOQUt
qAdFrwykyR32bMR0vUg8XVLm2rcaV87D6MDKGElKlkTxPoDK9+RPzfiu0sK4fmfV
TULb9izepRRfJLDWTeDJm3uxbt1qaOVc1ry24R4HvDsC48BmfuZEVedIn9+Mp+SW
xhrHiW1bUa3NL/p2BuPX
=Mb4f
-----END PGP SIGNATURE-----
Merge tag 'renesas-soc-fixes2-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into fixes
Merge "Second Round of Renesas ARM Based SoC Fixes for v3.19" from Simon
Horman:
* Instantiate GIC from C board code in legacy builds on r8a7778 and r8a7779
* tag 'renesas-soc-fixes2-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
ARM: shmobile: r8a7779: Instantiate GIC from C board code in legacy builds
ARM: shmobile: r8a7778: Instantiate GIC from C board code in legacy builds
Signed-off-by: Olof Johansson <olof@lixom.net>
* Add DT support for PM domains
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJUuIP9AAoJENfPZGlqN0++1YgP/jvxSCgTr9incpvoEeXsG7Pd
/EK0N15UBfJFlhy5oiTrjyCnrPqfqlT1cz39GTUy6s/4UpgjuXRr8lhbpaJrSH2g
N62EOv89rAChiGtxHwS4sXPvQPjcOIeQEsaq1C9W3IBx88bKpUQU9nbJtbuCbwUX
eSmsk9mJH+mZapNd+xo7Ksnq7Fjovx/ja+ZNu+1V8IIXOXKnnuv7SiV1ATU9pE+a
Bkrgjjw7zLof78xbtx2FInWj6vLGayqu3vAWt0zncXZBdoOuigavUjY275XYZ9eK
zdZwBW/UFecsopVDw653OnRAewuv+iWGKutJbEgK+Y5uT2wg4Q59/sp8E3fyKDwv
DNaopIJx9NhVNQZNMTT4/y3cV2xSNZqgBXfYt1EFDu01c1UIOXX+RGmI0RHgGoRL
eD8DZmT6z0iCF0Fn6rSZouFrUqghnUXWtrm4IkzNKTpsSoB+o5FfwG6b/wF0JHfw
til1Tx//lAChLMbUpNSIG88ng/4yF+UugRK0xoUVGyCMXLQaXhPRCd9EUb0rr5aN
Ac9rRrqU4anQsTSQewUkT7hyuBUfZSRZBk6eZ5ZBR+JvPZl637vUPHdfJauBr2/h
zv4uFjHdSUgoJCSVz35t65dYtDIvwKd9CcoCcuw+piYvq5K5ZmaSDnWl0f2YemdC
D38+hZiXwERwd+Vtad1N
=MA/A
-----END PGP SIGNATURE-----
Merge tag 'renesas-soc2-for-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc
Merge "Second Round of Renesas ARM Based SoC Updates for v3.20" from Simon
Horman:
* Add DT support for PM domains
* tag 'renesas-soc2-for-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
ARM: shmobile: R-Mobile: Add DT support for PM domains
ARM: shmobile: R-Mobile: Store SYSC base address in rmobile_pm_domain
ARM: shmobile: R-Mobile: Use generic_pm_domain.attach_dev() for pm_clk setup
Signed-off-by: Olof Johansson <olof@lixom.net>
First set of OMAP2+ hwmod patches for Linux v3.20. These are mostly
fixes for warnings, although there's one DRA7xx patch that fixes
CONFIG_DEBUG_LL for AM572x/DRA7xx SoCs that use UART3 for console,
such as the BeagleBoard-X15.
These patches entered Linux-next starting with the next-20150121 tag.
Basic build, boot, and PM test results can be found here:
http://www.pwsan.com/omap/testlogs/omap-hwmod-a-for-v3.20/20150121142621/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJUwDfAAAoJEMePsQ0LvSpLrdMP/3pVEhLffTOlIv9e1GizIier
r0BrT/A4hv46OWBKiHEnhdnds2UWv4TamHxNxFv4I4k9hr2p2xkcafTkcNOZJGiP
+ORy4GztzY3ECow+EJoMayE3AXqQzflr8fqWt6J8GxV3ipw1F9gPidJa52LP67OJ
3Fv4uLtiZgTQQ2TEEOkX3NaiJGcj8KyExiVHB0SZ8WvDyx8E/sFoVkq8BSI7xo0F
TJP5Yg8BjLeeVmC0omXMpugvOv2P+WCZyvLTiYjddcru5A/rsblcct8ziX9c7KOS
w8h0ze+AHYgp/BCkHfSD9bszCcwtSJhTsbBDco2ke+oHahTCys1s2QHl0KWwINjh
R0IqRxSjPYHR5Fm3YckqyB90FYMcNjJLazk7GelVPb+JR9HbqZNf1pKE3TAoJWcC
f+QpU/DaVL7zuOZAVrBym1lVcV+dF7yJjSvNSMtS9Ckznk7ViueQ4EJyYKko1N+B
44kiz37/An94S4XZ+5GrrGE8K5dVBaMx1H9KYWcQqi4jZn4pEbxMe/fF2dq0GEHA
qwO9ar0dXvmGSTONv2/QaaJoQb+vyLuoN1GKyk6AULKc6YCeNHhlGPMVFWmunWkF
v1LiqOaY0sZC9++4MkTnoWt6oEmVIlqNVDTgsYORSgFkc69Hws6anA0r7qNGyX0x
Z1ptjTIjYgApxTp+A7Xx
=Hn9I
-----END PGP SIGNATURE-----
Merge tag 'for-v3.20/omap-hwmod-a' of git://git.kernel.org/pub/scm/linux/kernel/git/pjw/omap-pending into omap-for-v3.20/fixes-not-urgent
ARM: OMAP2+: hwmod: first set of patches for v3.20
First set of OMAP2+ hwmod patches for Linux v3.20. These are mostly
fixes for warnings, although there's one DRA7xx patch that fixes
CONFIG_DEBUG_LL for AM572x/DRA7xx SoCs that use UART3 for console,
such as the BeagleBoard-X15.
These patches entered Linux-next starting with the next-20150121 tag.
Basic build, boot, and PM test results can be found here:
http://www.pwsan.com/omap/testlogs/omap-hwmod-a-for-v3.20/20150121142621/
am437x-idk and update am437x-sk boards. Also enabling new
devices for multiple boards.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJUuZwkAAoJEBvUPslcq6VzHkMP/1Q1jQxiwUTpXLDxLZRjIGrh
g6b3sHoGJT9U0zcRydH6dv/BlYelmu2xUZ0s1Gvz1xjwA00jwPqccgeybul3z+pZ
bc3CUpRBIOJNR0SD1BxBRs5HsBviEuHlysNOgsGyXyr1S6AtfrA9tkDB4XBw3ukz
uBmudWhvgHKUzZQfoMJxi2R4aNYUUp5Ibew4m9Hl8I3ftwn1eYQqrSy+zQhq1uXl
QWw2kixgCDcP/yRPIcKXKz5pbbxiBL2WqVnNxKOuUjOhikV8+79QOpwjQibxKNou
ID9CWvE9+qGmylhrEforrnVgr73KYcSXsjgLTtzb/3ZV2/OP2rY7oeemOvto9AI5
N/FRjTeJWk5vdiavu44rT+SwIZE/Uf32rCpQWLdvJRG9B24LtHp9oZohfqyjOF8/
7IkbrwEE1sxwJXUTkCXKKjTTu1+CQ87426QZErLeLj0kP3DbO87GOoGXC5m8LudO
CfnuWS9O6FkIga/JXorPvYJkw57SJWtWBgDcnBXnyWx7OVWzHTqAcZuHuQyAd1AP
AdbB45MjgJIzi7tZ9jV4yGkxfCwst5ZuXUix8Lzy4YdfmctjFgNeqHULtkgSJZCq
icOHYJakrdtX/miap/op8qov6B/AlUwZid7cd+Vh5jxDvJwSRG7ReEi/1AU3E/h8
9hAihXZ0Ukt2ED2dpRo9
=LFft
-----END PGP SIGNATURE-----
Merge tag 'omap-for-v3.20/dt-pt1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt
Merge "omap device tree changes for v3.20" from Tony Lindgren:
Device tree changes for omaps. Mostly to add support for new
am437x-idk and update am437x-sk boards. Also enabling new
devices for multiple boards.
* tag 'omap-for-v3.20/dt-pt1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (21 commits)
ARM: dts: omap3-gta04: Add handling for tv output
ARM: dts: cm-t3x: add NAND support
ARM: dts: am57xx-beagle-x15: Add GPIO controlled fan node
ARM: dts: am437x-idk: add gpio-based power key
ARM: dts: N950/N9: add twl_power
ARM: dts: am437x-sk: add power button binding
ARM: dts: add support for AM437x IDK
ARM: dts: am437x-gp-evm: add VPFE device tree data
ARM: dts: am437x-sk-evm: add VPFE device tree data
ARM: dts: am43x-epos-evm: add VPFE device tree data
ARM: dts: am4372: add VPFE DT node entries
ARM: dts: DRA7X: drop id property in pcie_phy
ARM: dts: omap3-n900: cleanup english
ARM: dts: am57xx-beagle-x15: Add dual ethernet
ARM: dts: am437x-sk: remove DSS pulls
ARM: dts: am437x-sk: remove internal i2c pullups
ARM: dts: am437x-sk: add explicit pinmux for both USB instances
ARM: dts: am437x-sk: remove ethernet pulls
ARM: dts: am437x-sk: add explicit MMC0 pinmux
ARM: dts: am437x-sk: remove internal pulls from QSPI
...
Signed-off-by: Olof Johansson <olof@lixom.net>
we've made several SoCs to boot in device tree only mode.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJUuZsuAAoJEBvUPslcq6Vz2egP/0Ms8650abNeSvKycfuYzUrf
+iVpCPaMr2IooMvtBc4L6xsKZjm7KD+dZAoRokpHQYbmkv22N3bpM8L9rWNTQAkh
ouwjSdQs8bla8IB9WjVDvb6f5R52rkEvs13LxVm3AgvXWI4VG2fDXF5ETuyerFl+
BUR8WExDyqGST4GK0nCt5+/oyPnHTqdnYLrLOcMNwCHN4ZOSKMkLPmGYeFGDc3az
v/22cQa8dJB35kYEoXjbbdvjGculCu2g/ec+pLPU1rH6v/sslwK36CRPUNh8m8oZ
cqHrIKlSctrl/P7VvV9N/7nOqKUYBrb8bKmoCs6QAPA/xGWOFH5Q8CCheOF9zV78
EyOM0ofgN5Qem5odHN4aDV6b/eIuoPwrqfnQbAPN4e1h5SNij4ZiTinUgOxV5vEq
LI6iajkcdSPpaR/FT1DxOGPkowBW2RLHp6/MtvvUbFv52JNrVXE9zAfsGQevZLto
hupeoDpjs+Tmez7sRybEkOrsFZDSANTzCZmSIomev2N5aYVp1A6itSJYg1m/x43G
/emjIfDaVoqwsvUdwSKmDaYsC6FJ1sKTjwK/ZquMXdVG+aNoW0LXXfCfBzUtq8x5
vLmULfG5YNLJAjGb8M+ALNBv0n7Bxpj8O1rWpbPvA6RM3T3f8lQuU7lv6xObKSDf
39ztgfT3BtRikXr1ctRL
=udgd
-----END PGP SIGNATURE-----
Merge tag 'omap-for-v3.20/cleanup-pt1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/cleanup
Merge "omap clean-up for v3.20" from Tony Lindgren:
Clean-up for omaps to remove dead code found with cppcheck after
we've made several SoCs to boot in device tree only mode.
* tag 'omap-for-v3.20/cleanup-pt1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: OMAP2+: Remove unused ti81xx platform init code
ARM: OMAP3+: PRM: remove prm_get_reset_sources declaration from headers
ARM: OMAP2: CM: remove unused PLL functions
ARM: OMAP2: clock: remove unused apll code
ARM: OMAP: dma.c: Remove unused function
ARM: OMAP1: timer32k.c: Remove unused function
ARM: OMAP1: irq.c: Remove unused function
ARM: OMAP2+: omap-pm-noop.c: Remove some unused functions
ARM: OMAP2+: voltage: Remove some unused functions
ARM: OMAP2+: powerdomain.c: Remove some unused functions
ARM: OMAP2+: omap_hwmod.c: Remove some unused functions
ARM: OMAP2+: dpll44xx.c: Remove unused function
ARM: OMAP2+: cm33xx.c: Remove some unused functions
ARM: OMAP2+: clkt2xxx_apll.c: Remove some unused functions
Signed-off-by: Olof Johansson <olof@lixom.net>
broken half merged state for a few years now. This gets us to the
point where we can boot it properly once the related SoC data is
added. Note that we've already made dm816x device tree only by
removing the known broken board file.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJUuZqjAAoJEBvUPslcq6Vzwd4P+gNp9C0T4VRJuWqO0ETavwdR
yj9jRaMcAfbBSBSktLY6YbiPD/dRdrfw5U59rqxq/Yk0b9j72adCRBUIwh5Ef05t
lf5uWPG2XYJhCGYTwA+ATM1p4luW6Og5ZA7ZnQexTVtHPnEJ4C4c5G+N3Nj44IB5
k3ptU5x9+nR0HT5/mnzUA/suTgBwBRM3AUBayk3D3vFinUxlPj83Cv0SLMSVehig
/II5D6bmPLLevUlMymcELlfPB9OtMN/k+7Ybu361Le5/lEKS9oeKEMx9bniZJxUV
9gCr2k5g6aaQS92PIavNB4ozFy6vIyribegwI5waXLNUyJXxcZzPcwdwzWg0l1NF
jTRsx6gbk50kRvC6LXjspDJkMxROCn8f8tcxow5LkttRfaBUtngBCxc8EPGc3hhp
4BwZxPDHaml/J6vkK/FzifQp3BinV+mx9gXeXo2gjp/qfzDgAkZ73mhR8s6uoeW1
fjN9lEVLliKL4Tx/M+CfzBq3NfBz9pKznlT+vvOM4WhCPHBQ+PhOBXaEQ8tkUv+7
rH9COBFV81jVjw3QLSrxNMxVWmkCxWdRFeyqFTYKQkCLvYnZeBHEulIH/Ge8zmGG
2Ar0jWr330pfISaUcfCjVBwboAq6bgxO6D/E0g2PsWPQ+QIGoN/C1BYzkeDOwdTu
76LNB1Ga2qwS2PHAH76G
=rC4v
-----END PGP SIGNATURE-----
Merge tag 'omap-for-v3.20/fixes-not-urgent-pt1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/fixes-non-critical
Merge "omap non-urgent fixes for v3.20" from Tony Lindgren:
Non-urgent fixes for omap variant dm816x that has been in a sorry
broken half merged state for a few years now. This gets us to the
point where we can boot it properly once the related SoC data is
added. Note that we've already made dm816x device tree only by
removing the known broken board file.
* tag 'omap-for-v3.20/fixes-not-urgent-pt1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: OMAP2+: Disable omap3 PM init for ti81xx
ARM: OMAP2+: Fix reboot for 81xx
ARM: OMAP2+: Fix dm814 and dm816 for clocks and timer init
ARM: OMAP2+: Fix ti81xx class type
ARM: OMAP2+: Fix ti81xx devtype
ARM: OMAP2+: Fix error handling for omap2_clk_enable_init_clocks
Signed-off-by: Olof Johansson <olof@lixom.net>
James Bottomley points out that it will be -1 during unload. It's
only used for diagnostics, so let's not hide that as it could be a
clue as to what's gone wrong.
Cc: Jason Wessel <jason.wessel@windriver.com>
Acked-and-documention-added-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Reviewed-by: Masami Hiramatsu <maasami.hiramatsu.pt@hitachi.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Backmerge Linus tree after rc5 + drm-fixes went in.
There were a few amdkfd conflicts I wanted to avoid,
and Ben requested this for nouveau also.
Conflicts:
drivers/gpu/drm/amd/amdkfd/Makefile
drivers/gpu/drm/amd/amdkfd/kfd_chardev.c
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c
drivers/gpu/drm/amd/amdkfd/kfd_priv.h
drivers/gpu/drm/amd/include/kgd_kfd_interface.h
drivers/gpu/drm/i915/intel_runtime_pm.c
drivers/gpu/drm/radeon/radeon_kfd.c
The Kconfig symbol DEBUG_MVEBU_UART_ALTERNATE was renamed to
DEBUG_MVEBU_UART0_ALTERNATE. And the symbol DEBUG_MVEBU_UART1_ALTERNATE
was added to allow UART1 as a DEBUG_LL target. Make the comment at the
top of this DTS reflect those changes.
Since we're touching this DTS add comments to show which blocks describe
UART0 and UART1.
Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
The pogoplug differs from the SheevaPlug only by a
few details, but especially in the led assignments.
This patch was tested under Gentoo Linux and is
based on dts files from Arch Linux ARM and OpenWrt.
Suggested-by: Felix Kaechele <heffer@fedoraproject.org>
Suggested-by: Oleg Rakhmanov <moonman.ca@gmail.com>
Signed-off-by: Christoph Junghans <ottxor@gentoo.org>
[Andrew Lunn <andrew@lunn.ch>: Fixed subject line]
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
If it fails we have to skip the device.
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
acpi_tb_delete_namespace_by_owner() expects ACPI_MTX_INTERPRETER to be
taken. This fixes the following issue:
ACPI Error: Mutex [0x0] is not acquired, cannot release (20141107/utmutex-322)
Call Trace:
[<ffffffff81b0bd28>] dump_stack+0x4f/0x7b
[<ffffffff81546bfc>] acpi_ut_release_mutex+0x47/0x67
[<ffffffff81542cf1>] acpi_tb_delete_namespace_by_owner+0x57/0x8d
[<ffffffff81543ef1>] acpi_unload_table_id+0x3a/0x5e
Signed-off-by: Octavian Purdila <octavian.purdila@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
PNP core is the last user of the __check_region() which has been
deprecated for almost 12 years (since v2.5.54). Replace it with a combo
of __request_region() followed by __release_region().
pnp_check_port() and pnp_check_mem() remain racy after this change.
Signed-off-by: Jakub Sitnicki <jsitnicki@gmail.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
fix a vmwgfx regression sleeping wrong task state.
* 'vmwgfx-fixes-3.19' of git://people.freedesktop.org/~thomash/linux:
drm/vmwgfx: Replace the hw mutex with a hw spinlock
This patch enable the last big hardware feature of my driver: the
connector for panel.
Like for HMDI and HDA, Digital Video Out (DVO) create brige, encoder
and connector
drm objects.
* 'drm-sti-next-add-dvo' of git://git.linaro.org/people/benjamin.gaignard/kernel:
drm: sti: add DVO output connector
Add atmel HLCDC driver.
* tag 'atmel-hlcdc-drm-3.20' of https://github.com/bbrezillon/linux-at91:
drm: add DT bindings documentation for atmel-hlcdc-dc driver
drm: add Atmel HLCDC Display Controller support
drm: panel: simple-panel: add bus format information for foxlink panel
drm: panel: simple-panel: add support for bus_format retrieval
drm: add bus_formats and num_bus_formats fields to drm_display_info
- Infrastructure work in amdkfd to prepare for VI support. This work mainly
includes separating modules into ASIC-specific functionality, adding
new properties that are relevant for VI, making sure that shared code is
reused, etc.
- Improve mechanism of submitting packets to HIQ (the kernel queue that amdkfd
uses to issue commands to the GPU). The driver used to verify that each CS
was read by the GPU. However, this proved to be both unnecessary and erroneous.
Therefore, we cancelled this verification.
- Moved initialization of compute VMIDs into radeon driver
- Various minor fixes
* tag 'drm-amdkfd-next-2015-01-21' of git://people.freedesktop.org/~gabbayo/linux: (22 commits)
drm/amdkfd: Fix description of sched_policy module parameter
drm/amdkfd: Remove sync_with_hw() from amdkfd
drm/amdkfd: Remove unused function busy_wait()
drm/amdkfd: Replace cpu_relax() with schedule() in DQM
drm/amdkfd: Fix for-loop when allocating HQD (non-HWS)
drm/amdkfd: Add initial VI support for KQ
drm/amdkfd: Encapsulate KQ functions in ops structure
drm/amdkfd: Add initial VI support for DQM
drm/amdkfd: Encapsulate DQM functions in ops structure
drm/amdkfd: Don't BUG on freeing GART sub-allocation
drm/amdkfd: Fix logic of destroy_queue_nocpsch()
MAINTAINERS: Update amdkfd files
drm/amdkfd: Change MQD manager to be H/W specific
drm/amdkfd: Add asic property to kfd_device_info
drm/amdkfd: Make KFD_MQD_TYPE enum types H/W agnostic
drm/amdkfd: Add new VI-specific queue properties
drm/radeon: Use new cik_structs.h file
drm/amdkfd: Don't include header files from radeon
drm/amd: Put cik structures in a common place
drm/radeon: Don't use relative paths in #include
...
- By reworking the PM code, we can remove the AT91 more specific initialization
- We are using DT for SRAM initialization now, so we can remove its explicit
mapping
- The PMC clock driver now hosts IDLE function for at91rm9200 with other
SoCs ones.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
iQEcBAABAgAGBQJUuUdxAAoJEAf03oE53VmQWvwIAKPKi90sVTuwDDf4qMBrkGgU
IZRKX3imm5zG2HezDFp9tNxKUK3uXnJDmOlNgFKo1L+Vx/42IHew9Fy+J0vtzWUh
y1bWwUI60wXd89tfDFeHmhk93yu5xn9Dv3dd9xlLbia2tUbHzz0E8ZDx4D2d9R63
qdTSfB+tXlPi1Zjh0X+XLdx7cBKut//P8f+07hW3I6p1hy8E6AhtvIoCFJT3lbsU
POiRlBFoeLoXAcHnZMBhP+ZrjHB5sfoZe83Xr5zpsW7wuo+TtpcH8H1D0QOYcrpn
7YBzNqmrpLrtgCsuMJ92c/yaLR/k4TqhiOCVN9Z5lY3Ei2kUJj37NeqGspljhxI=
=Ftvs
-----END PGP SIGNATURE-----
Merge tag 'at91-cleanup2' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91 into next/soc
Merge "at91: cleanup for 3.20 #2" from Nicolas Ferre:
Second batch of cleanup for 3.20:
- By reworking the PM code, we can remove the AT91 more specific initialization
- We are using DT for SRAM initialization now, so we can remove its explicit
mapping
- The PMC clock driver now hosts IDLE function for at91rm9200 with other
SoCs ones.
* tag 'at91-cleanup2' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91: (37 commits)
ARM: at91: move at91rm9200_idle() to clk/at91/pmc.c
ARM: at91: remove unused at91_init_sram
ARM: at91: sama5d4: remove useless call to at91_init_sram
ARM: at91: remove useless map_io
ARM: at91: pm: prepare for multiplatform
ARM: at91: pm: add UDP and UHP checks to newer SoCs
ARM: at91: pm: use the mmio-sram pool to access SRAM
ARM: at91: pm: rework cpu detection
ARM: at91: dts: sama5d3: add ov2640 camera sensor support
ARM: at91: dts: sama5d3: change name of pinctrl of ISI_MCK
ARM: at91: dts: sama5d3: change name of pinctrl_isi_{power,reset}
ARM: at91: dts: sama5d3: move the isi mck pin to mb
ARM: at91: dts: sama5d3: add missing pins of isi
ARM: at91: dts: sama5d3: split isi pinctrl
ARM: at91: dts: sama5d3: add isi clock
ARM: at91/dt: ethernut5: use at91sam9xe.dtsi
ARM: at91/dt: Add a dtsi for at91sam9xe
ARM: at91/dt: add SRAM nodes
ARM: at91/dt: at91rm9200ek: enable RTC
ARM: at91/dt: rm9200: add RTC node
...
Signed-off-by: Olof Johansson <olof@lixom.net>
Now that we can create and attach to IOMMU domains via of_dma_configure,
make sure we give the architecture a chance to tear them down when a
platform or amba device is destroyed.
Acked-by: Rob Herring <robh@kernel.org>
Reported-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
device_caps in struct v4l2_capability were inadequately set in
VIDIOC_QUERYCAP. Fix this. Without this a WARN_ON in the v4l2 core
is triggered. This WARN_ON was added for kernel 3.19 exactly to
detect these situations.
Signed-off-by: Sakari Ailus <sakari.ailus@iki.fi>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
The VIDIOC_QUERYCAP function should set device_caps, but this was missing.
In addition, it set the version field as well, but that should be done by
the core, not by the driver.
If a driver doesn't set device_caps the v4l2 core will issue a WARN_ON, so
it's important that this is set correctly.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
The locking scheme inside the vb2 thread is unsafe when stopping the
thread. In particular kthread_stop was called *after* internal data
structures were cleaned up instead of doing that before. In addition,
internal vb2 functions were called after threadio->stop was set to
true and vb2_internal_streamoff was called. This is also not allowed.
All this led to a variety of race conditions and kernel warnings and/or
oopses.
Fixed by moving the kthread_stop call up before the cleanup takes
place, and by checking threadio->stop before calling internal vb2
queuing operations.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Cc: <stable@vger.kernel.org> # for v3.16 and up
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
The V4L2 API requires both .capabilities and .device_caps fields of
struct v4l2_capability to be set. Otherwise the compliance checker
complains and since commit "v4l2-ioctl: WARN_ON if querycap didn't fill
device_caps" a compile-time warning is issued. Fix this non-compliance
in the rcar_vin driver.
Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
The V4L2 API requires both .capabilities and .device_caps fields of
struct v4l2_capability to be set. Otherwise the compliance checker
complains and since commit "v4l2-ioctl: WARN_ON if querycap didn't fill
device_caps" a compile-time warning is issued. Fix this non-compliance
in several soc-camera camera host drivers.
Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Tested-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
xfs_compat_attrmulti_by_handle() calls memdup_user() which returns a
negative error code. The error code is negated by the caller and thus
incorrectly converted to a positive error code.
Remove the error negation such that the negative error is passed
correctly back up to userspace.
Signed-off-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
Commit 2adb177e57 removed 2 devices
from the cxusb device table but failed to fix up the T230 properties
that follow, meaning that this device no longer gets detected properly.
Adjust the cxusb_table index appropriate so detection works.
Signed-off-by: Jonathan McDowell <noodles@earth.li>
Reviewed-by: Olli Salonen <olli.salonen@iki.fi>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Unconditionally attaching Si2161/Si2165 demod driver
breaks Hauppauge WinTV Starburst.
So create own card entry for this.
Add card name comments to the subsystem ids.
This fixes a regression introduced in 3.17 by
36efec48e2 ([media] cx23885: Add si2165 support for HVR-5500)
Signed-off-by: Matthias Schwarzott <zzam@gentoo.org>
Tested-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
CC: stable@vger.kernel.org # for 3.17 and upper
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
X-Patchwork-Delegate: m.chehab@samsung.com
Changeset ea2e813e8c moved the driver to staging, but it forgot to
preserve the existing dependency.
Fixes: ea2e813e8c ("[media] tlg2300: move to staging in preparation for removal")
Reported-by: Jim Davis <jim.epost@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>