Commit Graph

650799 Commits

Author SHA1 Message Date
Mauro (mdrjr) Ribeiro
0407aed495 Merge tag 'v4.9.151' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidn2-4.9.y
This is the 4.9.151 stable release
2019-02-13 20:06:26 -02:00
Mauro (mdrjr) Ribeiro
16fbab977e Merge tag 'v4.9.150' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidn2-4.9.y
This is the 4.9.150 stable release
2019-02-13 20:06:19 -02:00
Mauro (mdrjr) Ribeiro
6a990daa83 Merge tag 'v4.9.149' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidn2-4.9.y
This is the 4.9.149 stable release
2019-02-13 20:06:12 -02:00
Mauro (mdrjr) Ribeiro
1167497010 Merge tag 'v4.9.148' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidn2-4.9.y
This is the 4.9.148 stable release
2019-02-13 20:05:54 -02:00
Mauro (mdrjr) Ribeiro
dd003401a2 Merge tag 'v4.9.147' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidn2-4.9.y
This is the 4.9.147 stable release
2019-02-13 20:02:58 -02:00
Mauro (mdrjr) Ribeiro
97de9566b3 Merge tag 'v4.9.146' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidn2-4.9.y
This is the 4.9.146 stable release
2019-02-13 20:02:51 -02:00
Mauro (mdrjr) Ribeiro
a6422fb9fc Merge tag 'v4.9.145' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidn2-4.9.y
This is the 4.9.145 stable release
2019-02-13 20:02:43 -02:00
Mauro (mdrjr) Ribeiro
836ef42e01 Merge tag 'v4.9.144' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidn2-4.9.y
This is the 4.9.144 stable release
2019-02-13 20:02:29 -02:00
Mauro (mdrjr) Ribeiro
b598b5aeab Merge tag 'v4.9.143' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidn2-4.9.y
This is the 4.9.143 stable release
2019-02-13 08:43:33 -02:00
Mauro (mdrjr) Ribeiro
663a04717d Merge tag 'v4.9.142' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidn2-4.9.y
This is the 4.9.142 stable release
2019-02-13 08:40:45 -02:00
Mauro (mdrjr) Ribeiro
888c3eca83 ODROID-N2: prepare defconfig for release
Change-Id: I5d712b539dd68c97e257dc0d1f727a39f34dcca3
2019-02-13 06:55:02 -02:00
Mauro (mdrjr) Ribeiro
f9bada8936 Merge branch 'odroidn2-4.9.y' 2019-02-13 04:43:29 -02:00
Joy Cho
1a979bd8d4 Merge "ODROID-N2: osd: support flexible fb size with free scale option" into odroidn2-4.9.y 2019-02-13 11:47:23 +09:00
Joy Cho
eeff165bf4 ODROID-N2: osd: support flexible fb size with free scale option
Change-Id: I87a63eda62b96e3d54cb88f92e16364ba8250acf
2019-02-13 10:16:24 +09:00
Joy Cho
fb49f1bf1b ODROID-N2: vout: update current vout mode string
Change-Id: I19584a9dedfcf66a7ad2efbdcfddd9b5218add70
2019-02-13 10:11:17 +09:00
Dongjin Kim
0bb7e98378 ODROID-COMMON: spifc: add new hardware node 'spifc'
In order to access SPI-NOR flash memory from Linux kernel, new node 'spifc' is
added as 'disabled' by default. Since SPI flash memory shares the hardware bus
with eMMC, one can not be enabled when another one is enabled.

Change-Id: I7ae258dcc1b18df59dc33e8473c83f7ff0329461
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-02-11 20:56:54 +09:00
Kevin Kim
79a4246ceb ODROID-COMMON:Add pwm-gpio driver for cooling fan control
Change-Id: I906fdd7d8b3da407f8ea7560562df7cc46b3d8fa
2019-02-08 18:45:09 +09:00
Kevin Kim
d32317a627 ODROID-COMMON:Modified PWM pinctrl
Change-Id: I951fd8481328149e64536cbf2a02e51d47b36acd
2019-02-08 18:44:40 +09:00
Kevin Kim
620bc954fc pwm: gpio: Add a generic gpio based PWM driver
From: Olliver Schinagl <oliver@schinagl.nl>

This patch adds a bit-banging gpio PWM driver. It makes use of hrtimers,
to allow nano-second resolution, though it obviously strongly depends on
the switching speed of the gpio pins, hrtimer and system load.

Each pwm node can have 1 or more "pwm-gpio" entries, which will be
treated as pwm's as part of a pwm chip.

Change-Id: Idd42bf6d79f8ce52275a15965b02af470f28da7c
Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
2019-02-08 18:44:16 +09:00
Joshua Yang
9a732e55bc ODROID-N2: Add CONFIG_USB_SERIAL_CP210X
Change-Id: I33cb95010cc122c2688e2713da27a0f59a732b6f
2019-02-08 18:32:26 +09:00
Chris KIM
e46442df9f ODROID-N2: Fix build error.
Change-Id: I3014c2b540b91eeafde3a151e3752b02bbd30ccc
(cherry picked from commit 7461978eb4)
2019-02-08 18:28:39 +09:00
Kevin Kim
29922d53a4 ODROID-N2: mmc: Initate MMC power state on reboot
Change-Id: Ifade734854d94c1c98b34c55a431835b80c5f7e4
2019-02-08 18:16:53 +09:00
Joy Cho
d7df8c31c6 ODROID-N2: vout: hdmitx: adjust hdmi timing and hpll over 2Gbps
2560x1440p60hz / 2560x1600p60hz

Change-Id: I10240001b7c655b95f4db5d3fea8cb147d7495ab
2019-01-31 12:26:23 +09:00
Joy Cho
edbb6a6967 Merge "ODROID-N2: dts: adjust thermal trip point" into odroidn2-4.9.y 2019-01-30 12:25:36 +09:00
Mauro Ribeiro
f98ffa3fe1 Merge "ODROID-N2: support true 4k framebuffer" into odroidn2-4.9.y 2019-01-29 19:47:42 +09:00
Joy Cho
5a6ad30d27 Merge "hdmitx: custombuilt: consider hdmi pll output under 1GHz" into odroidn2-4.9.y 2019-01-29 16:10:52 +09:00
Dongjin Kim
cd234be4a9 Merge "ODROID-COMMON: efuse: fix to print true UUID from /sys/class/efuse/uuid" into odroidn2-4.9.y 2019-01-29 10:52:34 +09:00
Dongjin Kim
7e12aec898 ODROID-COMMON: cpuinfo: add to print the board UUID on eFUSE
Change-Id: Ia6400b15d6a16329d0d326492a0131003de8785f
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-01-29 10:52:10 +09:00
Dongjin Kim
0cd89cf8dc ODROID-COMMON: efuse: fix to print true UUID from /sys/class/efuse/uuid
Change-Id: Ic27fcef584be7a05ff384fa7cd350c34fdf9315c
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-01-29 03:30:59 +09:00
Joy Cho
64889d8edb hdmitx: custombuilt: consider hdmi pll output under 1GHz
Change-Id: I3730ad2d4c9e914c28f8d2e57da93561a72abe47
2019-01-28 16:08:40 +09:00
Joy Cho
2e6bf8fc1a Merge "ODROID-N2: hdmitx: add hdmi phy custombuilt mode" into odroidn2-4.9.y 2019-01-28 15:25:13 +09:00
Joy Cho
75a95d6280 ODROID-N2: hdmitx: add hdmi phy custombuilt mode
Change-Id: I2ee9c9eccda7d54e6a801ed6b90039deb3c3fc75
2019-01-28 12:28:38 +09:00
Dongjin Kim
959c23c7b5 ODROID-C3/N2: arch/arm64: removing the node 'unifykey'
The 'unifykey' is the storage only in an eMMC and not required for
other devices which does not use eMMC. Therefore, deprecated.

Change-Id: Ia59b9b53145038187bacb3f9469078f9f813278c
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-01-27 10:47:45 +09:00
Dongjin Kim
1a9de35123 ODROID-COMMON: dts: no building of DTB for AMLogic boards
Change-Id: I08cf75c6f1c6536c54b34ea8af33ff8e173d9e3a
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-01-27 10:36:55 +09:00
Dongjin Kim
50e46965b8 ODROID-N2: config: enable kernel features for Docker
Change-Id: I28aff3d9fd0c143afecd7425ab55e2ddb2757c65
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-01-27 10:35:52 +09:00
Dongjin Kim
92acb20d5c ODROID-N2: git: removing '.git/pre-commit'
Change-Id: Ia44136b12853e4555159dcb5aa046ea711d0c206
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-01-25 19:31:20 +09:00
Kevin Kim
4c6a1c3ac6 ODROID-COMMON:Removed HS400
Change-Id: Ic2082a938ff2966f74717796e3d52a4546fef0e6
2019-01-25 15:11:10 +09:00
Joy Cho
590f00c4c8 Merge "ODROID-N2: cpufreq: adjust default freq of A73 core to 1.8GHz" into odroidn2-4.9.y 2019-01-25 10:17:30 +09:00
Joy Cho
28d6399e43 ODROID-N2: cpufreq: adjust default freq of A73 core to 1.8GHz
Change-Id: I1e845ac032fbd42c7f01de9a0032284f0e06aceb
2019-01-24 17:35:30 +09:00
Joy Cho
d38af34d0e ODROID-N2: dts: adjust thermal trip point
Change-Id: Ied585cecf025b0c71e6c0fe2f414a1465b34b1e0
2019-01-24 16:37:47 +09:00
Joy Cho
b75f191fea arm64: dma-mapping: increase DMA coherent pool size to 2M
Change-Id: I55c33b5966a4468fe0c28659fcc24896c9f95262
2019-01-24 11:42:14 +09:00
Mauro (mdrjr) Ribeiro
a2ea56a695 Merge branch 'odroidn2-4.9.y'
Change-Id: Ic3afd09e0f697922aa8af237085ffe14cd632829
2019-01-23 03:43:09 -02:00
Greg Kroah-Hartman
008bfb9312 Linux 4.9.151 2019-01-16 22:12:33 +01:00
Vasily Averin
37c791a031 sunrpc: use-after-free in svc_process_common()
commit d4b09acf92 upstream.

if node have NFSv41+ mounts inside several net namespaces
it can lead to use-after-free in svc_process_common()

svc_process_common()
        /* Setup reply header */
        rqstp->rq_xprt->xpt_ops->xpo_prep_reply_hdr(rqstp); <<< HERE

svc_process_common() can use incorrect rqstp->rq_xprt,
its caller function bc_svc_process() takes it from serv->sv_bc_xprt.
The problem is that serv is global structure but sv_bc_xprt
is assigned per-netnamespace.

According to Trond, the whole "let's set up rqstp->rq_xprt
for the back channel" is nothing but a giant hack in order
to work around the fact that svc_process_common() uses it
to find the xpt_ops, and perform a couple of (meaningless
for the back channel) tests of xpt_flags.

All we really need in svc_process_common() is to be able to run
rqstp->rq_xprt->xpt_ops->xpo_prep_reply_hdr()

Bruce J Fields points that this xpo_prep_reply_hdr() call
is an awfully roundabout way just to do "svc_putnl(resv, 0);"
in the tcp case.

This patch does not initialiuze rqstp->rq_xprt in bc_svc_process(),
now it calls svc_process_common() with rqstp->rq_xprt = NULL.

To adjust reply header svc_process_common() just check
rqstp->rq_prot and calls svc_tcp_prep_reply_hdr() for tcp case.

To handle rqstp->rq_xprt = NULL case in functions called from
svc_process_common() patch intruduces net namespace pointer
svc_rqst->rq_bc_net and adjust SVC_NET() definition.
Some other function was also adopted to properly handle described case.

Signed-off-by: Vasily Averin <vvs@virtuozzo.com>
Cc: stable@vger.kernel.org
Fixes: 23c20ecd44 ("NFS: callback up - users counting cleanup")
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
v2: - added lost extern svc_tcp_prep_reply_hdr()
    - dropped trace_svc_process() changes
    - context fixes in svc_process_common()
Signed-off-by: Vasily Averin <vvs@virtuozzo.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-16 22:12:33 +01:00
Theodore Ts'o
c173c38416 ext4: avoid kernel warning when writing the superblock to a dead device
commit e86807862e upstream.

The xfstests generic/475 test switches the underlying device with
dm-error while running a stress test.  This results in a large number
of file system errors, and since we can't lock the buffer head when
marking the superblock dirty in the ext4_grp_locked_error() case, it's
possible the superblock to be !buffer_uptodate() without
buffer_write_io_error() being true.

We need to set buffer_uptodate() before we call mark_buffer_dirty() or
this will trigger a WARN_ON.  It's safe to do this since the
superblock must have been properly read into memory or the mount would
have been successful.  So if buffer_uptodate() is not set, we can
safely assume that this happened due to a failed attempt to write the
superblock.

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-16 22:12:33 +01:00
Theodore Ts'o
eb24a3b6bb ext4: fix a potential fiemap/page fault deadlock w/ inline_data
commit 2b08b1f12c upstream.

The ext4_inline_data_fiemap() function calls fiemap_fill_next_extent()
while still holding the xattr semaphore.  This is not necessary and it
triggers a circular lockdep warning.  This is because
fiemap_fill_next_extent() could trigger a page fault when it writes
into page which triggers a page fault.  If that page is mmaped from
the inline file in question, this could very well result in a
deadlock.

This problem can be reproduced using generic/519 with a file system
configuration which has the inline_data feature enabled.

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-16 22:12:32 +01:00
Theodore Ts'o
d1cfd9cba0 ext4: make sure enough credits are reserved for dioread_nolock writes
commit 812c0cab2c upstream.

There are enough credits reserved for most dioread_nolock writes;
however, if the extent tree is sufficiently deep, and/or quota is
enabled, the code was not allowing for all eventualities when
reserving journal credits for the unwritten extent conversion.

This problem can be seen using xfstests ext4/034:

   WARNING: CPU: 1 PID: 257 at fs/ext4/ext4_jbd2.c:271 __ext4_handle_dirty_metadata+0x10c/0x180
   Workqueue: ext4-rsv-conversion ext4_end_io_rsv_work
   RIP: 0010:__ext4_handle_dirty_metadata+0x10c/0x180
   	...
   EXT4-fs: ext4_free_blocks:4938: aborting transaction: error 28 in __ext4_handle_dirty_metadata
   EXT4: jbd2_journal_dirty_metadata failed: handle type 11 started at line 4921, credits 4/0, errcode -28
   EXT4-fs error (device dm-1) in ext4_free_blocks:4950: error 28

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-16 22:12:32 +01:00
Ilya Dryomov
f710ce8ad2 rbd: don't return 0 on unmap if RBD_DEV_FLAG_REMOVING is set
commit 85f5a4d666 upstream.

There is a window between when RBD_DEV_FLAG_REMOVING is set and when
the device is removed from rbd_dev_list.  During this window, we set
"already" and return 0.

Returning 0 from write(2) can confuse userspace tools because
0 indicates that nothing was written.  In particular, "rbd unmap"
will retry the write multiple times a second:

  10:28:05.463299 write(4, "0", 1)        = 0
  10:28:05.463509 write(4, "0", 1)        = 0
  10:28:05.463720 write(4, "0", 1)        = 0
  10:28:05.463942 write(4, "0", 1)        = 0
  10:28:05.464155 write(4, "0", 1)        = 0

Cc: stable@vger.kernel.org
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Tested-by: Dongsheng Yang <dongsheng.yang@easystack.cn>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-16 22:12:32 +01:00
Yi Zeng
57cd3fad76 i2c: dev: prevent adapter retries and timeout being set as minus value
commit 6ebec961d5 upstream.

If adapter->retries is set to a minus value from user space via ioctl,
it will make __i2c_transfer and __i2c_smbus_xfer skip the calling to
adapter->algo->master_xfer and adapter->algo->smbus_xfer that is
registered by the underlying bus drivers, and return value 0 to all the
callers. The bus driver will never be accessed anymore by all users,
besides, the users may still get successful return value without any
error or information log print out.

If adapter->timeout is set to minus value from user space via ioctl,
it will make the retrying loop in __i2c_transfer and __i2c_smbus_xfer
always break after the the first try, due to the time_after always
returns true.

Signed-off-by: Yi Zeng <yizeng@asrmicro.com>
[wsa: minor grammar updates to commit message]
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Cc: stable@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-16 22:12:32 +01:00
Hans de Goede
dff14f70dc ACPI: power: Skip duplicate power resource references in _PRx
commit 7d7b467cb9 upstream.

Some ACPI tables contain duplicate power resource references like this:

        Name (_PR0, Package (0x04)  // _PR0: Power Resources for D0
        {
            P28P,
            P18P,
            P18P,
            CLK4
        })

This causes a WARN_ON in sysfs_add_link_to_group() because we end up
adding a link to the same acpi_device twice:

sysfs: cannot create duplicate filename '/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/808622C1:00/OVTI2680:00/power_resources_D0/LNXPOWER:0a'
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.19.12-301.fc29.x86_64 #1
Hardware name: Insyde CherryTrail/Type2 - Board Product Name, BIOS jumperx.T87.KFBNEEA02 04/13/2016
Call Trace:
 dump_stack+0x5c/0x80
 sysfs_warn_dup.cold.3+0x17/0x2a
 sysfs_do_create_link_sd.isra.2+0xa9/0xb0
 sysfs_add_link_to_group+0x30/0x50
 acpi_power_expose_list+0x74/0xa0
 acpi_power_add_remove_device+0x50/0xa0
 acpi_add_single_object+0x26b/0x5f0
 acpi_bus_check_add+0xc4/0x250
 ...

To address this issue, make acpi_extract_power_resources() check for
duplicates and simply skip them when found.

Cc: All applicable <stable@vger.kernel.org>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
[ rjw: Subject & changelog, comments ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-16 22:12:32 +01:00